Point SKATE_RELAY, the default relay pools, the DM/CVM/zap relay arrays, the cvm-server + push-service defaults, and the archive default at wss://relay.skate-spots.org, keeping the legacy hosted relay as a fallback during the client-update window. Restored 115/115 archived events; the relay runs behind Caddy with TLS. Docs + AGENTS.md updated.
1653 lines
122 KiB
TypeScript
1653 lines
122 KiB
TypeScript
/** uk — batch 2. Filled by the Ukrainian translation pass. */
|
||
const ukBatch2 = {
|
||
mapUi: {
|
||
mapFooter: {
|
||
links: "Посилання",
|
||
hide: "Сховати панель посилань карти",
|
||
},
|
||
findingSpots: "Шукаємо Spots",
|
||
loadingSpots: "Завантажуємо Spots",
|
||
loadingMap: "Завантаження карти...",
|
||
mapViewAria: "Вигляд карти",
|
||
listViewAria: "Вигляд списку",
|
||
layers: "Шари",
|
||
mapLayers: "Шари карти",
|
||
showOnMap: "Показати на карті",
|
||
showResults: "Показати результати",
|
||
quickActions: "Швидкі дії",
|
||
spots: "Spots",
|
||
shops: "Магазини",
|
||
gear: "Спорядження",
|
||
tours: "Тури",
|
||
events: "Події",
|
||
crews: "Crews",
|
||
spotType: "Тип Spot",
|
||
sortBy: "Сортувати за",
|
||
trustLevel: "Рівень довіри",
|
||
weather: "Погода",
|
||
buySellGear: "Купити/Продати спорядження",
|
||
stash: "Stash",
|
||
more: "Більше",
|
||
newHere: "Вперше тут?",
|
||
welcomeDesc: "Відкривай скейт-Spots, події та спільноту.",
|
||
getOnZapstore: "Завантажити в Zapstore",
|
||
dismiss: "Закрити",
|
||
addedBy: "Додано",
|
||
directions: "Маршрут",
|
||
viewDetails: "Детальніше",
|
||
viewDetailsArrow: "Детальніше →",
|
||
spotDetails: "Деталі Spot",
|
||
skateShop: "Скейт-магазин",
|
||
skateSpot: "Скейт-Spot",
|
||
youAreHere: "Ви тут",
|
||
conditions: "Умови",
|
||
weatherScoreSuffix: "{{score}}/100 погода",
|
||
wind: "Вітер",
|
||
humidity: "Вологість",
|
||
airQuality: "Якість повітря",
|
||
threeDayForecast: "Прогноз на 3 дні",
|
||
gearForSale: "Спорядження на продаж ({{count}})",
|
||
viewItems: "Переглянути товари →",
|
||
viewAllItems: "Переглянути всі {{count}} товарів →",
|
||
viewGear: "Переглянути спорядження →",
|
||
localTour: "Локальний тур",
|
||
meetAt: "Зустріч: {{place}}",
|
||
hours: "{{count}} годин",
|
||
level: "рівень {{level}}",
|
||
viewTour: "Переглянути тур →",
|
||
upcomingEvent: "Найближча подія",
|
||
viewEvent: "Переглянути подію →",
|
||
skateCrew: "Скейт-Crew",
|
||
members: "{{count}} учасників",
|
||
since: "З {{year}}",
|
||
viewCrew: "Переглянути Crew →",
|
||
acceptsBitcoin: "Приймає Bitcoin",
|
||
boosted: "Просунуто",
|
||
website: "Вебсайт",
|
||
offlineSavedSpots: "Офлайн · показано збережені Spots",
|
||
cantReachRelays: "Не вдається зв'язатися з Relay",
|
||
relayOnlineNoAnswer: "Ви онлайн, але спільнотний Relay зараз не відповідає.",
|
||
youreOffline: "Ви офлайн.",
|
||
savedOnDevice: "Spots, які ви вже бачили, збережені на цьому пристрої й з'являться тут.",
|
||
noSpotsMatchTitle: "Немає відповідних Spots",
|
||
noSpotsMatchDesc: "Спробуйте інший запит або скиньте фільтри.",
|
||
noSpotsMappedYet: "Ще немає Spots на карті",
|
||
noSpotsMappedDesc: "Будьте першим, хто нанесе свій Park на карту — це займе хвилину, він ваш, і наступний скейтер, який проїде повз, подякує вам.",
|
||
addFirstSpot: "Додати перший Spot",
|
||
findSpotsNearMe: "Знайти Spots поблизу",
|
||
locating: "Визначаємо місце…",
|
||
refiningLocation: "Уточнюємо ваше місце…",
|
||
refiningLocationDesc: "Центровано на вашому останньому Spot — отримуємо свіжі дані GPS.",
|
||
locatingYou: "Визначаємо ваше місце…",
|
||
locatingDesc: "Отримуємо дані GPS. Уперше це може зайняти до хвилини.",
|
||
foundYou: "Вас знайдено",
|
||
foundYouDesc: "Карту центровано на вашому місці.",
|
||
locationPermissionNeeded: "Потрібен дозвіл на місцезнаходження",
|
||
permissionNeededDesc: "Дозвольте доступ до місцезнаходження для SkateSpots у Налаштуваннях пристрою → Застосунки → SkateSpots → Дозволи, потім знову натисніть «Поблизу».",
|
||
locationTimedOut: "Час очікування місцезнаходження минув",
|
||
timeoutNativeDesc: "Не вдалося вчасно визначити місце. Якщо ви в приміщенні, GPS не бачить супутники — увімкніть мережеве визначення місцезнаходження (Налаштування → Місцезнаходження) або вийдіть надвір і спробуйте знову.",
|
||
timeoutWebDesc: "Не вдалося вчасно визначити ваше місце. Перевірте сигнал і спробуйте знову.",
|
||
noLocationProvider: "Немає постачальника геоданих",
|
||
noProviderNativeDesc: "Ваш телефон не надає геодані. На ROM із фокусом на приватність (напр. GrapheneOS) увімкніть мережеве визначення місцезнаходження в Налаштуваннях → Місцезнаходження, або переконайтеся, що GPS увімкнено, і спробуйте надворі.",
|
||
noProviderWebDesc: "Постачальник геоданих недоступний. Увімкніть служби геолокації та спробуйте знову.",
|
||
locationUnavailable: "Місцезнаходження недоступне",
|
||
unavailableNativeDesc: "Увімкніть геолокацію/GPS у налаштуваннях телефону, дозвольте SkateSpots доступ до місцезнаходження (Налаштування → Застосунки → SkateSpots → Дозволи) і спробуйте знову.",
|
||
unavailableWebDesc: "Не вдалося визначити ваше місце. Переконайтеся, що служби геолокації увімкнено.",
|
||
locationBlocked: "Місцезнаходження заблоковано",
|
||
locationBlockedDesc: "Ваш браузер заблокував доступ до місцезнаходження для цього сайту. Ось як його повернути:",
|
||
locationPlatformAndroid: "Android Chrome",
|
||
locationPlatformIos: "iOS Safari",
|
||
locationPlatformDesktop: "Desktop Chrome",
|
||
locationPlatformFirefox: "Firefox",
|
||
locationStepsAndroid: "Натисніть значок замка в адресному рядку → Налаштування сайту → Місцезнаходження → Дозволити",
|
||
locationStepsIos: "Застосунок Налаштування → Safari → Місцезнаходження → Дозволити (або натисніть кнопку «AA» в адресному рядку Safari)",
|
||
locationStepsDesktop: "Натисніть значок замка → Налаштування сайту → Місцезнаходження → Дозволити",
|
||
locationStepsFirefox: "Натисніть значок замка → З'єднання захищено → Докладніше → Дозволи → Доступ до вашого місцезнаходження → Дозволити",
|
||
gotIt: "Зрозуміло",
|
||
addSpot: "Додати Spot",
|
||
addShop: "Додати магазин",
|
||
addEvent: "Додати подію",
|
||
addSpotHereTitle: "Додати Spot тут?",
|
||
addSpotHereDesc: "Поставте мітку там, де натиснули",
|
||
sellGear: "Продати спорядження",
|
||
offerTour: "Запропонувати тур",
|
||
closeAddMenu: "Закрити меню додавання",
|
||
addMenuAria: "Додати Spot, магазин, подію, спорядження або тур",
|
||
localChat: "Локальний чат",
|
||
localChatDesc: "Живий чат для місця, на якому центрована карта. Оберіть, наскільки широко сягає канал.",
|
||
btcMapShowing: "Показано {{count}} місць, де ви можете витратити свої sats поблизу",
|
||
btcMapShow: "Показати місця, де можна витратити свої sats (через BTC Map)",
|
||
yourPrivateStash: "Ваш приватний Stash",
|
||
stashIntro: "Відстежуйте своє спорядження, призначайте ціни й знаходьте обміни з іншими скейтерами.",
|
||
encryptionRequired: "Потрібне шифрування",
|
||
encryptionRequiredDesc: "Використовуйте підписувач із підтримкою NIP-44 (Alby, nos2x, Amber).",
|
||
myStash: "Мій Stash",
|
||
encrypted: "Зашифровано",
|
||
itemsCount: "{{count}} предметів",
|
||
items: "Предмети",
|
||
wishlist: "Список бажань",
|
||
types: "Типи",
|
||
stashEmpty: "Ваш Stash порожній",
|
||
addFirstItem: "Додати перший предмет",
|
||
wishlistCount: "Список бажань ({{count}})",
|
||
myGearCount: "Моє спорядження ({{count}})",
|
||
openFullStash: "Відкрити повний Stash",
|
||
addItem: "Додати предмет",
|
||
searchSpotsPlaceholder: "Пошук Spots...",
|
||
selected: "Обрано",
|
||
noSpotsFound: "Spots не знайдено. Спробуйте інший запит.",
|
||
addingSpotsHint: "Додавання Spots допомагає користувачам знаходити вас під час перегляду конкретних локацій",
|
||
report: "Скарга",
|
||
spotSingular: "1 Spot",
|
||
spotPlural: "{{count}} Spots",
|
||
view: "Переглянути",
|
||
myCollections: "Мої колекції",
|
||
collectionsSubtitle: "Упорядковуйте улюблені Spots у персоналізовані списки",
|
||
newCollection: "Нова колекція",
|
||
loginToCreate: "Увійдіть, щоб створювати колекції",
|
||
loginToCreateDesc: "Зберігайте улюблені Spots у персоналізовані списки, як-от «Поїздка до Барселони 2024» чи «Найкращі Rails у Лос-Анджелесі»",
|
||
noCollections: "Ще немає колекцій",
|
||
noCollectionsDesc: "Створіть першу колекцію, щоб упорядковувати Spots",
|
||
createFirstCollection: "Створіть першу колекцію",
|
||
createNewCollection: "Створити нову колекцію",
|
||
createCollectionDesc: "Дайте колекції назву та необов'язковий опис",
|
||
collectionName: "Назва колекції",
|
||
collectionNamePlaceholder: "Поїздка до Барселони 2024",
|
||
descriptionOptional: "Опис (необов'язково)",
|
||
descriptionPlaceholder: "Мої улюблені Spots з поїздки до Барселони...",
|
||
creating: "Створення...",
|
||
createCollection: "Створити колекцію",
|
||
editCollection: "Редагувати колекцію",
|
||
saving: "Збереження...",
|
||
saveChanges: "Зберегти зміни",
|
||
deleteCollectionTitle: "Видалити колекцію?",
|
||
deleteCollectionDesc: "Це назавжди видалить «{{title}}». Самі Spots не постраждають.",
|
||
deleting: "Видалення...",
|
||
collectionCreated: "Колекцію створено!",
|
||
collectionCreatedDesc: "«{{title}}» готовий для Spots",
|
||
collectionCreateFailed: "Не вдалося створити колекцію",
|
||
collectionUpdated: "Колекцію оновлено!",
|
||
changesSaved: "Ваші зміни збережено",
|
||
collectionUpdateFailed: "Не вдалося оновити колекцію",
|
||
collectionDeleted: "Колекцію видалено",
|
||
collectionDeletedDesc: "«{{title}}» видалено",
|
||
collectionDeleteFailed: "Не вдалося видалити колекцію",
|
||
somethingWentWrong: "Щось пішло не так"
|
||
},
|
||
mapPage: {
|
||
title: "Магазини та Spots",
|
||
spots: "Spots",
|
||
shops: "Магазини",
|
||
filters: "Фільтри",
|
||
listView: "Список",
|
||
mapView: "Карта",
|
||
nearMe: "Поблизу",
|
||
searchPlaceholder: "Пошук Spots...",
|
||
noSpotsInArea: "У цій області немає Spots",
|
||
zoomIn: "Збільшити",
|
||
zoomOut: "Зменшити",
|
||
myLocation: "Моє місце",
|
||
locationsFound: "Знайдено {{count}} локацій",
|
||
spotsOnly: "Лише Spots",
|
||
shopsOnly: "Лише магазини",
|
||
spotsAndShops: "Spots і магазини",
|
||
noSpotsMatch: "Жоден Spot не відповідає вашим фільтрам.",
|
||
noSpotsYet: "Ще не додано жодного Spot.",
|
||
addFirstSpot: "Додати перший Spot"
|
||
},
|
||
spotUi: {
|
||
claim: {
|
||
areYouOwner: "Це ваш Spot?",
|
||
privateDesc: "Цей Spot позначено як приватний. Якщо він належить вам або ви ним керуєте, заявіть на нього — модератор SkateSpots підтвердить право власності, і ви візьмете оголошення під контроль.",
|
||
claimSpot: "Заявити на цей Spot",
|
||
nip05Required: "Щоб заявити на приватний Spot, потрібен підтверджений NIP-05 (доказ, що ви контролюєте ідентичність Nostr). Додайте його у профілі та поверніться.",
|
||
addNip05: "Додати NIP-05 у налаштуваннях",
|
||
pendingTitle: "Заявка на розгляді",
|
||
pendingDesc: "Вашу заявку подано. Модератор SkateSpots її розгляне — ви зможете завершити заявлення Spot, щойно її схвалять.",
|
||
approvedTitle: "Заявку схвалено",
|
||
approvedDesc: "Модератор схвалив вашу заявку. Завершіть, щоб стати власником цього Spot.",
|
||
complete: "Завершити заявлення",
|
||
submitted: "Заявку подано",
|
||
submittedDesc: "Модератор розгляне вашу заявку. Ви візьмете Spot під контроль, коли її схвалять.",
|
||
submitFailed: "Не вдалося подати заявку",
|
||
submit: "Подати заявку",
|
||
submitting: "Надсилання…",
|
||
confirmTitle: "Заявити на «{{title}}»?",
|
||
confirmIntro: "Ви просите стати власником цього приватного Spot.",
|
||
confirmBullet1: "Модератор SkateSpots розглядає запит (ми не можемо перевірити право власності, лише ключі Nostr)",
|
||
confirmBullet2: "Якщо схвалять, ви завершите заявлення, станете власником і зможете редагувати Spot",
|
||
confirmBullet3: "Початковий Spot залишається в Nostr — мережа децентралізована",
|
||
adminTitle: "Заявки на право власності в очікуванні",
|
||
adminApprove: "Схвалити",
|
||
adminApproved: "Схвалено",
|
||
adminApprovedDesc: "Тепер вони можуть завершити заявлення Spot.",
|
||
adminApproveFailed: "Не вдалося схвалити заявку",
|
||
loginRequired: "Увійдіть, щоб заявити на цей приватний Spot або подати запит на право власності."
|
||
},
|
||
abandonedDesc: "Востаннє оновлено {{time}}. Якщо початковий власник неактивний, ви можете заявити на цей Spot, щоб підтримувати й покращувати його.",
|
||
claimedNotice: "Заявлене оголошення",
|
||
claimedNoticeDesc: "Цей Spot було повторно опубліковано новим власником після заявлення. Початкове оголошення може досі існувати окремо.",
|
||
abandonedLoginDesc: "Востаннє оновлено {{time}}. Увійдіть, щоб заявити на цей Spot і підтримувати його.",
|
||
accessDeniedDesc: "Ви можете редагувати лише Spots, які створили самі.",
|
||
accessDeniedTitle: "Доступ заборонено",
|
||
addAtLeastOneTag: "Будь ласка, додайте хоча б один тег.",
|
||
additionalDetails: "Додаткові деталі (необов'язково)",
|
||
additionalDetailsPlaceholder: "Додайте будь-який контекст, який може допомогти...",
|
||
addNewTags: "Додати нові теги:",
|
||
addNip05InSettings: "Додати NIP-05 у налаштуваннях",
|
||
addPhoto: "Додати фото",
|
||
addPhotoDesc: "Додайте фото, щоб допомогти іншим відкрити цей Spot.",
|
||
addPhotoOrDescription: "Додайте фото або опис",
|
||
addPhotoOrDescriptionDesc: "Дайте скейтерам за що зачепитися — знімок або рядок про це місце.",
|
||
addPhotos: "Додати фото",
|
||
addPhotoToSpot: "Додати фото до Spot",
|
||
adminDeleteDialogDesc: "Як адміністратор SkateSpots ви прибираєте «{{title}}». Його буде приховано в усьому застосунку для всіх, і запит на видалення надійде на Relay.",
|
||
adminDeleteReason: "Адміністратор SkateSpots видалив Spot «{{title}}»",
|
||
airQuality: "Якість повітря",
|
||
altSkateSpot: "Скейт-Spot: {{title}}",
|
||
areYouShopOwner: "Ви власник магазину?",
|
||
askBeforeSkating: "Спитайте перед катанням",
|
||
backToSpot: "Назад до Spot",
|
||
beFirstToListGear: "Будьте першим, хто виставить спорядження на цьому Spot!",
|
||
beFirstToSay: "Будьте першим, хто щось скаже.",
|
||
byAuthor: "від {{name}}",
|
||
captionPlaceholder: "Додайте підпис (необов'язково) — опишіть, що на фото, коли його знято тощо.",
|
||
chatPublicNote: "Будь-хто може це читати — повідомлення публічні й ефемерні. Для приватних розмов використовуйте Direct Messages.",
|
||
checkPinBelow: "Перевірте мітку нижче, перш ніж додавати дублікат.",
|
||
claimBullet1: "Ви стаєте власником і можете редагувати Spot",
|
||
claimBullet2: "Початковий Spot залишається (Nostr децентралізований)",
|
||
claimBullet3: "Ваша версія може з'явитися поряд з оригіналом",
|
||
claimFailed: "Не вдалося заявити",
|
||
claiming: "Заявлення...",
|
||
claimIntro: "Ви збираєтеся заявити право власності на цей Spot. Це створить вашу власну версію Spot, яку ви зможете редагувати й підтримувати.",
|
||
claimSpot: "Заявити Spot",
|
||
claimThisSpot: "Заявити на цей Spot",
|
||
claimTitle: "Заявити на «{{title}}»?",
|
||
claimWhatHappens: "Що відбувається, коли ви заявляєте:",
|
||
coachesAndFilmersAvailable: "Тренери та оператори доступні на цьому Spot",
|
||
coachesCount: "Тренери ({{count}})",
|
||
coachHere: "Тренер тут",
|
||
community: "Спільнота",
|
||
communityVerified: "Підтверджено спільнотою",
|
||
communityVerifiedTitle: "Інший скейтер зробив внесок тут (фото або звіт про стан).",
|
||
conditions: "Умови",
|
||
contactForPermission: "Зв'язатися для дозволу",
|
||
contactInfo: "Контактна інформація",
|
||
contributePhoto: "Додати фото",
|
||
contributing: "Додавання...",
|
||
couldNotSendMessage: "Не вдалося надіслати повідомлення.",
|
||
couldNotSubmit: "Не вдалося надіслати",
|
||
couldNotUploadPhoto: "Не вдалося завантажити фото. Ви можете додати його нижче.",
|
||
crewsThatSkateHere: "Crews, які катаються тут",
|
||
current: "Поточні:",
|
||
currentTags: "Поточні теги цього Spot:",
|
||
daysAgo: "{{count}} день тому",
|
||
daysAgoPlural: "{{count}} днів тому",
|
||
deleteDialogDesc: "Це назавжди видалить «{{title}}» з усіх Relay. Цю дію не можна скасувати.",
|
||
deletedSpotReason: "Видалений Spot",
|
||
deleteFailed: "Не вдалося видалити",
|
||
deleteSpot: "Видалити Spot",
|
||
deleteSpotTitle: "Видалити Spot?",
|
||
differentSpotPublishAnyway: "Це інший Spot — усе одно опублікувати",
|
||
dragDropOrClick: "Перетягніть або натисніть",
|
||
dropPhotos: "Перетягніть фото",
|
||
duplicateOne: "Є Spot у межах 60 м від вашої мітки. Якщо це те саме місце, додайте туди своє фото або звіт про стан замість створення дубліката.",
|
||
duplicateOther: "Є Spots у межах 60 м від вашої мітки. Якщо це те саме місце, додайте туди своє фото або звіт про стан замість створення дубліката.",
|
||
editSpotSeoDesc: "Редагуйте свій скейт-Spot.",
|
||
failedToContribute: "Не вдалося додати",
|
||
failedToPublish: "Не вдалося опублікувати",
|
||
failedToPublishDesc: "Щось пішло не так. Перевірте консоль для деталей.",
|
||
failedToSubmitReport: "Не вдалося надіслати звіт",
|
||
failedToSuggestTags: "Не вдалося запропонувати теги",
|
||
failedToUpdate: "Не вдалося оновити",
|
||
failedToUploadImage: "Не вдалося завантажити зображення",
|
||
failedToUploadPhoto: "Не вдалося завантажити фото",
|
||
feelsLikeTemp: "Відчувається як {{temp}}°C",
|
||
filmersCount: "Оператори ({{count}})",
|
||
filmHere: "Знімати тут",
|
||
gearSwap: "Обмін спорядженням",
|
||
geolocationNotSupported: "Геолокація не підтримується",
|
||
geolocationNotSupportedDesc: "Ваш браузер не підтримує геолокацію.",
|
||
getDirections: "Прокласти маршрут",
|
||
hangTight: "Зачекайте",
|
||
hangTightDesc: "Ваше фото ще завантажується. Воно прикріпиться за секунду.",
|
||
helpImproveSpot: "Допоможіть покращити цей Spot, додавши фото або запропонувавши теги",
|
||
hiddenByModerator: "Приховано модератором",
|
||
hiddenByModeratorDesc: "Цей Spot не показується на карті чи в пошуку. Ви все ще бачите його, бо він ваш. Редагування не поверне його — він залишається прихованим, доки модератор не скасує рішення.",
|
||
humidity: "Вологість",
|
||
imageUploaded: "Зображення завантажено",
|
||
imageUploadedDesc: "Ваше зображення успішно завантажено.",
|
||
imHere: "Я тут",
|
||
invalidCoordinates: "Недійсні координати",
|
||
invalidCoordinatesDesc: "Будь ласка, введіть дійсну широту (-90 до 90) і довготу (-180 до 180).",
|
||
invalidNpub: "Недійсний npub",
|
||
invalidNpubDesc: "Будь ласка, введіть дійсну адресу npub.",
|
||
lastReported: "востаннє {{time}}",
|
||
listGear: "Виставити спорядження",
|
||
listYourGearHere: "Виставте своє спорядження тут",
|
||
loadingChat: "Завантаження чату…",
|
||
locationError: "Помилка місцезнаходження",
|
||
locationFound: "Місцезнаходження знайдено",
|
||
locationFoundDesc: "Ваше поточне місце встановлено.",
|
||
locationRequired: "Потрібне місцезнаходження",
|
||
locationRequiredDesc: "Будь ласка, введіть координати або скористайтеся поточним місцем.",
|
||
loginRequiredTitle: "Потрібен вхід",
|
||
logInToChat: "Увійдіть, щоб приєднатися до локального чату.",
|
||
logInToContributePhotos: "Увійдіть, щоб додавати фото",
|
||
loginToEditSpot: "Вам потрібно увійти, щоб редагувати цей Spot.",
|
||
logInToReport: "Вам потрібно увійти, щоб поскаржитися на вміст.",
|
||
logInToReportStatus: "Увійдіть, щоб повідомити стан цього Spot.",
|
||
logInToSuggestTags: "Увійдіть, щоб пропонувати теги",
|
||
manageNip05ToClaim: "Керувати NIP-05 для заявлення",
|
||
meetAtSpotForPickup: "💡 Зустрічайтеся на цьому Spot для безпечної передачі",
|
||
memberOne: "{{count}} учасник",
|
||
memberOther: "{{count}} учасників",
|
||
messageFailed: "Не вдалося надіслати повідомлення",
|
||
messageMapper: "Картограф повідомлень",
|
||
messagePlaceholder: "Повідомлення цьому Spot… (спробуйте /me або /who)",
|
||
messagesHiddenOne: "{{count}} повідомлення приховано вашим фільтром довіри. Знизьте фільтр, щоб побачити більше.",
|
||
messagesHiddenOther: "{{count}} повідомлень приховано вашим фільтром довіри. Знизьте фільтр, щоб побачити більше.",
|
||
messagesHiddenShortOne: "{{count}} повідомлення приховано вашим фільтром довіри",
|
||
messagesHiddenShortOther: "{{count}} повідомлень приховано вашим фільтром довіри",
|
||
metresAway: "{{distance}} м звідси",
|
||
moderatorVouchedDesc: "Модератор переглянув цей Spot і поручився за нього. Молодець.",
|
||
monthsAgo: "{{count}} місяць тому",
|
||
monthsAgoPlural: "{{count}} місяців тому",
|
||
newOwnerNpub: "npub нового власника",
|
||
newOwnerNpubHint: "Введіть npub користувача, якому хочете передати цей Spot.",
|
||
nip05RequiredToClaim: "⚠️ Для заявлення магазинів потрібна верифікація NIP-05",
|
||
noCommunitySignalTitle: "Ще немає фото чи звіту про стан від спільноти — ніхто не підтвердив це місце.",
|
||
breakdownPhotos: "{{count}} фото",
|
||
breakdownStatus: "{{count}} звіт(ів) про стан",
|
||
breakdownComments: "{{count}} коментар(ів)",
|
||
breakdownReactions: "{{count}} реакція(й)",
|
||
breakdownCollections: "{{count}} збереження(нь)",
|
||
breakdownZaps: "{{count}} Zap(ів)",
|
||
breakdownTags: "{{count}} пропозиція(й) тегів",
|
||
breakdownCrews: "{{count}} Crew",
|
||
breakdownLab: "{{count}} профільних посилань",
|
||
verifyNudgeTitle: "Будьте першим, хто підтвердить цей Spot",
|
||
verifyNudgeBody: "Фото або «Я катався тут» — так Spot отримує підтвердження — допоможіть наступному скейтеру.",
|
||
verifyNudgeStatus: "Я катався тут",
|
||
communityChip: "Спільнота",
|
||
seenChip: "Переглянуто",
|
||
noGearListedYet: "Спорядження ще не виставлено",
|
||
noMessagesYet: "У цьому локальному каналі ще немає повідомлень. Привітайтеся — «хтось катається сьогодні ввечері?»",
|
||
noPhoto: "Без фото",
|
||
noReportsYet: "Ще немає звітів",
|
||
noTags: "Без тегів",
|
||
notASkateSpot: "Не скейт-Spot",
|
||
offerServicesHere: "💡 Запропонуйте свої послуги на цьому Spot",
|
||
photoCaptured: "Фото зроблено!",
|
||
photoCapturedDesc: "Ваше фото успішно завантажено.",
|
||
photoContributed: "Фото додано!",
|
||
photoContributedDesc: "Ваше фото додано до цього Spot.",
|
||
photosAdded: "Ваші фото додано.",
|
||
photosRecommended: "настійно рекомендується — Spots без фото залишаються позначеними як Неперевірені",
|
||
photosUploaded: "Завантажено {{count}} фото",
|
||
photoUploaded: "Фото завантажено",
|
||
photoUploadedDesc: "Додайте підпис і надішліть, щоб зробити внесок!",
|
||
photoUploadFailed: "Не вдалося завантажити фото",
|
||
pleaseTryAgain: "Будь ласка, спробуйте знову",
|
||
public: "Публічний",
|
||
publicChatTitle: "Будь-хто може читати повідомлення в цьому каналі — він публічний і незашифрований.",
|
||
recentReports: "Останні звіти",
|
||
recipientRequired: "Потрібен отримувач",
|
||
recipientRequiredDesc: "Будь ласка, введіть npub нового власника.",
|
||
removeAdmin: "Видалити (адмін)",
|
||
removeSpot: "Прибрати Spot",
|
||
removeSpotAdminTitle: "Прибрати цей Spot? (адмін)",
|
||
reportOne: "скарга",
|
||
reportContent: "Поскаржитися на вміст",
|
||
reportContentDesc: "Допоможіть зберегти спільноту безпечною, повідомляючи про неприйнятний вміст.",
|
||
reportedBySkaters: " від {{count}} скейтерів — на розгляді. Якщо це справжній Spot, додайте фото або звіт про стан, щоб підтвердити його.",
|
||
reportedNotASpot: "Поскаржилися, що це не скейт-Spot",
|
||
reportingType: "Скарга на {{type}}",
|
||
reports: "скарги",
|
||
reportShop: "Поскаржитися на магазин",
|
||
reportSpot: "Поскаржитися на Spot",
|
||
reportStatus: "Повідомити стан",
|
||
reportSubmitted: "Скаргу надіслано",
|
||
reportSubmittedDesc: "Дякуємо, що допомагаєте зберігати SkateSpots у безпеці.",
|
||
reportSubmittedLong: "Дякуємо, що допомагаєте зберігати SkateSpots у безпеці й точним. Вашу скаргу розглянуть довірені учасники спільноти.",
|
||
reportSubmittedTitle: "Скаргу надіслано",
|
||
report: {
|
||
notASkateSpot: {
|
||
label: "Не скейт-Spot",
|
||
description: "Тестовий запис або місце, зовсім не призначене для катання"
|
||
},
|
||
fakeSpot: {
|
||
label: "Фальшивий/неіснуючий Spot",
|
||
description: "Цей Spot не існує або місце вказано неправильно"
|
||
},
|
||
stolenPhotos: {
|
||
label: "Вкрадені/фальшиві фото",
|
||
description: "Фото — це стокові зображення або вкрадені з іншого місця"
|
||
},
|
||
spamAd: {
|
||
label: "Спам або реклама",
|
||
description: "Промо-вміст або дубльовані оголошення"
|
||
},
|
||
dangerousLocation: {
|
||
label: "Небезпечне місце",
|
||
description: "Приватна власність, небезпечно або незаконно для доступу"
|
||
},
|
||
inappropriateContent: {
|
||
label: "Неприйнятний вміст",
|
||
description: "Містить образливий або дорослий вміст"
|
||
},
|
||
impersonation: {
|
||
label: "Видача себе за іншого",
|
||
description: "Хтось видає себе за когось іншого"
|
||
},
|
||
other: {
|
||
label: "Інше",
|
||
description: "Щось інше, не зазначене вище"
|
||
}
|
||
},
|
||
targetType: {
|
||
spot: "Spot",
|
||
event: "Подія",
|
||
tour: "Тур",
|
||
shop: "Магазин",
|
||
user: "Користувач",
|
||
listing: "Оголошення",
|
||
coach: "Тренер",
|
||
filmer: "Оператор"
|
||
},
|
||
sameOwner: "Той самий власник",
|
||
sameOwnerDesc: "Не можна передати поточному власнику.",
|
||
saveChanges: "Зберегти зміни",
|
||
saving: "Збереження...",
|
||
services: "Послуги",
|
||
shareSpotText: "Глянь на цей скейт-Spot: {{title}}",
|
||
shelter: "Укриття",
|
||
shelterHint: "Чи відкритий цей Spot впливу погоди? Допомагає скейтерам знайти сухі місця, коли йде дощ.",
|
||
shopClaimDesc: "Якщо він належить вам або ви ним керуєте, ви можете заявити на цей магазин, щоб підтвердити право власності та керувати оголошенням.",
|
||
shopClaimNip05Hint: "Щоб заявити на цей магазин, додайте ідентифікатор NIP-05, що відповідає домену сайту магазину.",
|
||
skatersActiveDesc: "Люди, які писали в цьому каналі за останні 24 год.",
|
||
skatersActiveOne: "{{count}} скейтер активний тут",
|
||
skatersActiveOther: "{{count}} скейтерів активні тут",
|
||
skatersSellingGear: "Скейтери на цьому Spot продають спорядження",
|
||
skateSpot: "Скейт-Spot",
|
||
somethingWentWrong: "Щось пішло не так",
|
||
spot: "Spot",
|
||
spotAdded: "Spot додано!",
|
||
spotAddedDesc: "Ваш скейт-Spot опубліковано в мережі.",
|
||
spotAddedNoPhoto: "Опубліковано — і позначено як Неперевірений, доки хтось не додасть фото. Фото Spot багато важить.",
|
||
spotChat: "Чат Spot",
|
||
spotClaimed: "Spot заявлено!",
|
||
spotClaimedDesc: "Тепер ви власник цього Spot. Ви можете редагувати його зі свого профілю.",
|
||
spotDeleted: "Spot видалено",
|
||
spotDeletedDesc: "Запит на видалення надіслано на Relay. Більшість Relay приберуть цей вміст.",
|
||
spotMayAlreadyBeOnMap: "Цей Spot, можливо, вже на карті",
|
||
spotMayAlreadyExist: "Цей Spot, можливо, вже існує",
|
||
spotMayBeAbandoned: "Spot може бути закинутий",
|
||
spotPhotoAlt: "Spot",
|
||
spotRemoved: "Spot прибрано",
|
||
spotRemovedDesc: "Цей Spot було прибрано, і його буде приховано в усьому SkateSpots.",
|
||
spotSeoDesc: "Перегляньте цей скейт-Spot на SkateSpots.",
|
||
spotStatus: "Стан Spot",
|
||
spotStatusDesc: "Чи «{{title}}» все ще катабельний? Повідомте спільноті про його поточний стан.",
|
||
spotTypeRequired: "Потрібен тип Spot",
|
||
spotTypeRequiredDesc: "Будь ласка, оберіть тип Spot, щоб скейтери знали, до чого вони під'їжджають.",
|
||
spotUpdated: "Spot оновлено!",
|
||
spotUpdatedDesc: "Ваші зміни опубліковано в мережі.",
|
||
staffVerifiedTitle: "Адміністратор SkateSpots переглянув і поручився за цей Spot.",
|
||
statusNotePlaceholder: "Необов'язково: додайте деталі (напр. «нові кноби на Ledge», «охорона виганяє після 18:00»)",
|
||
statusReported: "Стан повідомлено",
|
||
statusReportedDesc: "Дякуємо, що підтримуєте карту свіжою. Ваш звіт опубліковано.",
|
||
submitReport: "Надіслати звіт",
|
||
submitting: "Надсилання...",
|
||
suggestedByUser: "Запропоновано {{count}} користувачем",
|
||
suggestedByUsers: "Запропоновано {{count}} користувачами",
|
||
suggestedTagsContent: "Запропоновані теги для {{title}}: {{tags}}",
|
||
suggestNTags: "Запропонувати {{count}} тегів",
|
||
suggestOneTag: "Запропонувати 1 тег",
|
||
suggestTags: "Запропонувати теги",
|
||
suggestTagsDesc: "Допоможіть категоризувати цей Spot, пропонуючи відповідні теги.",
|
||
tags: "Теги",
|
||
tagsHint: "Додайте теги для особливостей, покриттів, вайбу (макс. {{max}})",
|
||
tagsSuggested: "Теги запропоновано!",
|
||
tagsSuggestedDesc: "Ваші пропозиції тегів надіслано.",
|
||
takePhoto: "Зробити фото",
|
||
threeDayForecast: "Прогноз на 3 дні",
|
||
tipTheMapper: "Подякувати картографу",
|
||
tipTheMapperDesc: "Цей Spot був корисним? Надішліть Zap, щоб подякувати картографу!",
|
||
titleRequired: "Потрібна назва",
|
||
titleRequiredDesc: "Будь ласка, введіть назву цього Spot.",
|
||
today: "Сьогодні",
|
||
tomorrow: "Завтра",
|
||
transferDesc: "Передати «{{title}}» іншому користувачу. Цю дію не можна скасувати.",
|
||
transferFailed: "Не вдалося передати",
|
||
transferOwnership: "Передати право власності",
|
||
transferRequestContent: "Запит на передачу права власності на Spot «{{title}}»",
|
||
transferRequested: "Передачу запитано",
|
||
transferRequestedDesc: "Новому власнику потрібно заявити на Spot, щоб завершити передачу.",
|
||
transferring: "Передача...",
|
||
transferSpotOwnership: "Передати право власності на Spot",
|
||
transferWarningDesc: "Після передачі ви більше не зможете редагувати чи видаляти цей Spot.",
|
||
typeToSearchTags: "Введіть для пошуку або додавання тегів...",
|
||
underReview: " — на розгляді. Якщо це справжній Spot, додайте фото або звіт про стан, щоб підтвердити його.",
|
||
untitledSpot: "Spot без назви",
|
||
unverified: "Неперевірений",
|
||
updateDetailsFor: "Оновіть деталі для {{title}}",
|
||
updateSpotDesc: "Оновіть інформацію про цей Spot. Усі поля з * обов'язкові.",
|
||
uploadAPhoto: "Завантажити фото",
|
||
uploadAPhotoHint: "Перетягніть або натисніть · JPG, PNG, WebP",
|
||
uploadedAlt: "Завантажено",
|
||
uploadFailed: "Не вдалося завантажити",
|
||
uploadingPhoto: "Завантаження фото…",
|
||
uploadPhotoFirst: "Будь ласка, спершу завантажте фото.",
|
||
uvIndex: "УФ-індекс",
|
||
verifiedBySkateSpots: "Перевірено SkateSpots",
|
||
viewPhotoFullScreen: "Переглянути фото на весь екран",
|
||
viewPhotoOf: "Фото {{n}} з {{total}}",
|
||
warning: "Попередження",
|
||
weatherConditions: "Погодні умови",
|
||
weatherOnly: "лише погода",
|
||
weatherOnlyUnconfirmed: "Лише погода. Ніхто ще не підтвердив, що це скейт-Spot, тож оцінки умов немає — додайте фото або звіт про стан, щоб підтвердити його.",
|
||
whyReporting: "Чому ви скаржитеся?",
|
||
wind: "Вітер",
|
||
yearsAgo: "{{count}} рік тому",
|
||
yearsAgoPlural: "{{count}} років тому"
|
||
},
|
||
diyUi: {
|
||
title: "DIY — Зроби сам",
|
||
tagline: "Посібники, відкриті інструменти та креслення, щоб зробити власні Deck, рампи й бетонні Spots — а тоді знайти людей, місця й ринок до них.",
|
||
doItWithPeople: "Роби це з людьми",
|
||
backToDiy: "Назад до DIY",
|
||
calc: {
|
||
title: "Калькулятор вартості Deck",
|
||
intro: "Скільки коштує зробити Deck — праця, обладнання, матеріали, час процесу, пакування й маржа — і справедлива ціна продажу. Збережено на цьому пристрої."
|
||
},
|
||
designer: {
|
||
title: "Конструктор Deck",
|
||
intro: "Сформуйте контур скейтборду чи лонгборду, а тоді експортуйте друкований шаблон 1:1, SVG або DXF для CNC. Збережено на цьому пристрої.",
|
||
presets: "Пресети",
|
||
dimensions: "Розміри",
|
||
shape: "Форма",
|
||
kicks: "Kicks",
|
||
hardware: "Отвори для Trucks",
|
||
width: "Макс. ширина",
|
||
wheelbase: "Wheelbase",
|
||
nose: "Довжина носа",
|
||
tail: "Довжина хвоста",
|
||
length: "Загальна довжина",
|
||
waist: "Талія",
|
||
endRound: "Округлість країв",
|
||
concave: "Concave",
|
||
thickness: "Товщина",
|
||
tailKick: "Kick хвоста",
|
||
noseKick: "Kick носа",
|
||
holeNew: "New school (2.125″)",
|
||
holeOld: "Old school (2.5″)",
|
||
holeSpacing: "New school — 2.125″ × 1.625″ (54 × 41 мм); old school — 2.5″ × 1.625″. Монтажні отвори 3/16″.",
|
||
topView: "Вигляд зверху",
|
||
sideView: "Бічний профіль",
|
||
concaveSection: "Переріз Concave",
|
||
export: "Експорт",
|
||
pdfA4: "PDF 1:1 · A4",
|
||
pdfLetter: "PDF 1:1 · Letter",
|
||
printNote: "Друкуйте PDF на 100% (без «вписати в сторінку»), а тоді склейте аркуші за хрестиками в кутах. SVG теж у натуральну величину.",
|
||
note: "Це 2D-контур, який ви обводите й вирізаєте. Для повних 3D-форм і проєктування прес-форм усе ще варто взяти справжній CAD."
|
||
},
|
||
source: "Джерело",
|
||
comingSoon: "Незабаром",
|
||
footer: "Покрокові посібники вже в дорозі. Поки що: знайдіть людей, які будують, у The Lab, нанесіть свій Spot на карту та купуйте чи продавайте на Маркетплейсі. Працюйте безпечно — захист, рукавички та окуляри.",
|
||
categories: {
|
||
boards: "Deck",
|
||
ramps: "Рампи та дерев'яні перешкоди",
|
||
concrete: "Бетон і DIY Spots",
|
||
repairs: "Ремонт і налаштування",
|
||
tools: "Інструменти та креслення"
|
||
},
|
||
cards: {
|
||
ossBuild: {
|
||
title: "Зібрати скейтборд",
|
||
blurb: "Покрокове виготовлення Deck — шпон, форми, преси й оздоблення."
|
||
},
|
||
sk8cad: {
|
||
title: "SK8CAD",
|
||
blurb: "Відкритий CAD для форм Deck, Concave та проєктування прес-форм."
|
||
},
|
||
deckCost: {
|
||
title: "Вартість і ціна Deck",
|
||
blurb: "Порахуйте матеріали, працю та справедливу ціну продажу ще до того, як почнете."
|
||
},
|
||
deckDesigner: {
|
||
title: "Конструктор Deck",
|
||
blurb: "Сформуйте контур і надрукуйте шаблон 1:1 — або експортуйте SVG/DXF для CNC."
|
||
},
|
||
ledgeBox: {
|
||
title: "Збудувати Ledge або бокс",
|
||
blurb: "Дерев'яна перешкода для початківців, яку можна зробити за вихідні."
|
||
},
|
||
quarterpipe: {
|
||
title: "Збудувати quarterpipe",
|
||
blurb: "Креслення рампи, перехід і коупінг для домашнього міні."
|
||
},
|
||
flatbar: {
|
||
title: "Збудувати flatbar",
|
||
blurb: "Дешево, портативно й найкращий спосіб вчити Rails."
|
||
},
|
||
concreteBasics: {
|
||
title: "Основи бетону",
|
||
blurb: "Замішування, опалубка та оздоблення Ledge чи банки, що протримається."
|
||
},
|
||
coping: {
|
||
title: "Коупінг і краї",
|
||
blurb: "Як виставити коупінг і оздобити перехід для гладкого грінду."
|
||
},
|
||
buyParts: {
|
||
title: "Купити деталі та спорядження",
|
||
blurb: "Беріть Deck, кріплення й інструменти в продавців на Маркетплейсі."
|
||
},
|
||
mapSpot: {
|
||
title: "Нанести DIY Spot на карту",
|
||
blurb: "Щось збудували? Додайте на карту, щоб інші могли знайти й покататися."
|
||
},
|
||
regrip: {
|
||
title: "Переклеїти Griptape",
|
||
blurb: "Зніміть старий гріп і акуратно наклейте новий Griptape."
|
||
},
|
||
tune: {
|
||
title: "Налаштувати Bearings і Trucks",
|
||
blurb: "Почистіть Bearings, замініть бушинги й налаштуйте геометрію Trucks."
|
||
},
|
||
printMolds: {
|
||
title: "3D-друковані форми",
|
||
blurb: "Файли друкованих прес-форм і вирівнювальних основ від спільноти."
|
||
},
|
||
sk8cadTools: {
|
||
title: "Інструменти для форм і вирівнювання",
|
||
blurb: "Проєктуйте форми з вбудованими вирівнювальними основами."
|
||
}
|
||
},
|
||
actions: {
|
||
findBuilder: {
|
||
title: "Знайти будівельника",
|
||
blurb: "Будівельники рамп і DIY у The Lab, які можуть спроєктувати чи залити це для вас."
|
||
},
|
||
findCrew: {
|
||
title: "Знайти DIY Crew",
|
||
blurb: "Crews, зосереджені на будівництві — приєднуйтеся до тих, хто втілює Spots у життя."
|
||
},
|
||
mapSpot: {
|
||
title: "Нанести DIY Spot на карту",
|
||
blurb: "Додайте Spot, який збудували, щоб він жив на карті."
|
||
},
|
||
sellBuilds: {
|
||
title: "Продавати свої вироби",
|
||
blurb: "Виставляйте Deck, рампи чи деталі, які робите, на Маркетплейсі."
|
||
},
|
||
findCoach: {
|
||
title: "Знайти тренера",
|
||
blurb: "Тренери, які навчають DIY-модулів зі скейтингу та будівництва Spots."
|
||
}
|
||
}
|
||
},
|
||
labelsUi: {
|
||
spotCategory: {
|
||
street: {
|
||
label: "Street",
|
||
description: "Випадкові знайдені місця, міський рельєф"
|
||
},
|
||
transition: {
|
||
label: "Transition",
|
||
description: "Вигнуті/похилі поверхні"
|
||
},
|
||
park: {
|
||
label: "Park",
|
||
description: "Побудовані скейт-Park"
|
||
},
|
||
plaza: {
|
||
label: "Plaza",
|
||
description: "Міські площі (як MACBA, Love Park)"
|
||
}
|
||
},
|
||
spotFeature: {
|
||
wallrides: "Wallrides",
|
||
stairs: "Сходи та поручні",
|
||
rails: "Rails",
|
||
ledges: "Ledges та бордюри",
|
||
gaps: "Gaps",
|
||
flatground: "Flatground",
|
||
"manual-pads": "Manual Pads",
|
||
"half-pipes": "Half Pipes",
|
||
"quarter-pipes": "Quarter Pipes",
|
||
"mini-ramps": "Mini Ramps",
|
||
bowls: "Bowls",
|
||
vert: "Vert Ramps",
|
||
"mega-ramps": "Mega Ramps",
|
||
hubbas: "Hubbas",
|
||
"euro-gaps": "Euro Gaps",
|
||
banks: "Banks",
|
||
"spine-ramps": "Spine Ramps",
|
||
"roll-ins": "Roll-ins",
|
||
hips: "Hips",
|
||
volcano: "Volcano",
|
||
pyramids: "Pyramids / Funboxes",
|
||
"snake-runs": "Snake Runs",
|
||
"pump-track": "Pump Track Rollers",
|
||
"flat-bars": "Flat Bars"
|
||
},
|
||
spotType: {
|
||
street: "Street",
|
||
transition: "Transition",
|
||
park: "Park",
|
||
plaza: "Plaza",
|
||
wallrides: "Wallrides",
|
||
stairs: "Сходи та поручні",
|
||
rails: "Rails",
|
||
ledges: "Ledges та бордюри",
|
||
gaps: "Gaps",
|
||
flatground: "Flatground",
|
||
"manual-pads": "Manual Pads",
|
||
"half-pipes": "Half Pipes",
|
||
"quarter-pipes": "Quarter Pipes",
|
||
"mini-ramps": "Mini Ramps",
|
||
bowls: "Bowls",
|
||
vert: "Vert Ramps",
|
||
"mega-ramps": "Mega Ramps",
|
||
hubbas: "Hubbas",
|
||
"euro-gaps": "Euro Gaps",
|
||
banks: "Banks",
|
||
"spine-ramps": "Spine Ramps",
|
||
"roll-ins": "Roll-ins",
|
||
hips: "Hips",
|
||
volcano: "Volcano",
|
||
pyramids: "Pyramids / Funboxes",
|
||
"snake-runs": "Snake Runs",
|
||
"pump-track": "Pump Track Rollers",
|
||
"flat-bars": "Flat Bars",
|
||
diy: "DIY",
|
||
rail: "Rail",
|
||
ledge: "Ledge",
|
||
gap: "Gap",
|
||
bowl: "Bowl",
|
||
stall: "Stall",
|
||
slappy: "Slappy"
|
||
},
|
||
access: {
|
||
public: {
|
||
label: "Публічне — відкрите для всіх"
|
||
},
|
||
private: {
|
||
label: "Приватна власність — потрібен дозвіл"
|
||
},
|
||
locals: {
|
||
label: "Спершу спитайте місцевих"
|
||
}
|
||
},
|
||
shelter: {
|
||
outdoor: {
|
||
label: "Відкрите",
|
||
short: "Відкрите",
|
||
description: "Повністю під відкритим небом — дощ зупиняє катання"
|
||
},
|
||
partial: {
|
||
label: "Частково накрите",
|
||
short: "Частково накрите",
|
||
description: "Деякі перешкоди залишаються сухими"
|
||
},
|
||
covered: {
|
||
label: "Накрите / під дахом",
|
||
short: "Накрите",
|
||
description: "Надворі, але під дахом"
|
||
},
|
||
indoor: {
|
||
label: "У приміщенні",
|
||
short: "У приміщенні",
|
||
description: "Повністю закрите — катання у будь-яку погоду"
|
||
}
|
||
},
|
||
eventType: {
|
||
contest: "Contest",
|
||
demo: "Demo",
|
||
session: "Session",
|
||
workshop: "Майстерня",
|
||
premiere: "Прем'єра",
|
||
tradeshow: "Виставка",
|
||
gameskate: "Game of Skate",
|
||
concert: "🎸 Концерт",
|
||
jam: "🎵 Jam",
|
||
festival: "🎪 Фестиваль",
|
||
popup: "🎯 Pop-up"
|
||
},
|
||
gearCategory: {
|
||
deck: "Deck",
|
||
trucks: "Trucks",
|
||
wheels: "Wheels",
|
||
bearings: "Bearings",
|
||
shoes: "Скейт-взуття",
|
||
clothing: "Одяг",
|
||
protective: "Захисне спорядження",
|
||
stickers: "Стікери",
|
||
wax: "Wax",
|
||
tools: "Інструменти",
|
||
griptape: "Griptape",
|
||
rubbrick: "Rub Brick"
|
||
},
|
||
gearCondition: {
|
||
new: {
|
||
label: "Нове",
|
||
description: "Ніколи не використовувалося, ще в упаковці"
|
||
},
|
||
like_new: {
|
||
label: "Як нове",
|
||
description: "Майже не використовувалося, відмінний стан"
|
||
},
|
||
good: {
|
||
label: "Добре",
|
||
description: "Звичайне зношення, працює бездоганно"
|
||
},
|
||
well_used: {
|
||
label: "Добре вживане",
|
||
description: "Має сліди зносу, але ще працює"
|
||
}
|
||
},
|
||
priceType: {
|
||
fixed: {
|
||
label: "Фіксована ціна",
|
||
description: "Ціна встановлена в USD або sats"
|
||
},
|
||
free: {
|
||
label: "Безкоштовно",
|
||
description: "Віддаю"
|
||
},
|
||
trade: {
|
||
label: "Обмін",
|
||
description: "Хочу обмінятися"
|
||
},
|
||
offer: {
|
||
label: "Зробити пропозицію",
|
||
description: "Ціна договірна"
|
||
}
|
||
},
|
||
listingType: {
|
||
selling: {
|
||
label: "Продаж",
|
||
description: "Спорядження виставлено на продаж"
|
||
},
|
||
wtb: {
|
||
label: "Хочу купити",
|
||
description: "Шукаю конкретне спорядження"
|
||
}
|
||
},
|
||
tour: {
|
||
spotType: {
|
||
street: "Street",
|
||
park: "Park",
|
||
diy: "DIY",
|
||
transition: "Transition",
|
||
hidden: "Приховані перлини"
|
||
},
|
||
category: {
|
||
local: {
|
||
label: "Локальний тур",
|
||
description: "Покажіть приховані Spots у вашому місті"
|
||
},
|
||
national: {
|
||
label: "Національний тур",
|
||
description: "Багатоміські поїздки країною"
|
||
},
|
||
international: {
|
||
label: "Міжнародний тур",
|
||
description: "Пригоди за кордоном у кількох країнах"
|
||
},
|
||
destruction: {
|
||
label: "World Destruction",
|
||
description: "Глобальне командне змагання у стилі KOTR"
|
||
}
|
||
}
|
||
},
|
||
crew: {
|
||
vibe: {
|
||
street: "Street",
|
||
transition: "Transition / Vert",
|
||
park: "Park",
|
||
diy: "DIY",
|
||
cruising: "Cruising / Зйомка",
|
||
oldschool: "Old School",
|
||
allterrain: "All Terrain",
|
||
girls: "Дівчата / Жінки",
|
||
youth: "Юнь / Ґроми",
|
||
adaptive: "Адаптивний",
|
||
punk: "Punk",
|
||
hiphop: "Rap / Hip-Hop"
|
||
},
|
||
focus: {
|
||
mixed: "Змішаний / Загальний",
|
||
builder: "DIY та будівельники",
|
||
photo: "Фото та відео",
|
||
coaching: "Тренерство",
|
||
art: "Мистецтво та дизайн",
|
||
music: "Гурт і музика",
|
||
wellness: "Тренування та фізіо"
|
||
},
|
||
focusDescription: {
|
||
mixed: "Звичайний скейт-Crew — показується лише на сторінці Crews.",
|
||
builder: "Crew з DIY / будівництва Park — також показується в The Lab у розділі Будівельники.",
|
||
photo: "Crew зі зйомки, фотографії чи монтажу — також показується в The Lab у розділі Фото та відео.",
|
||
coaching: "Crew з тренерства / уроків — також показується в The Lab у розділі Тренерство.",
|
||
art: "Колектив з мистецтва, дизайну, графіті чи татуювань — також показується в The Lab у розділі Мистецтво та дизайн.",
|
||
music: "Гурт або музичний колектив — також показується в The Lab у розділі Музика.",
|
||
wellness: "Crew з тренувань, фітнесу чи фізіо — також показується в The Lab у розділі Тренування."
|
||
},
|
||
lookingFor: {
|
||
filmer: "Оператор",
|
||
photographer: "Фотограф",
|
||
editor: "Відеомонтажер",
|
||
coach: "Тренер",
|
||
builder: "Будівельник рамп",
|
||
artist: "Художник / Дизайнер",
|
||
musician: "Музикант / Гурт",
|
||
members: "Нові учасники"
|
||
},
|
||
role: {
|
||
filmer: "Оператор",
|
||
photographer: "Фотограф",
|
||
editor: "Монтажер",
|
||
coach: "Тренер",
|
||
builder: "Будівельник",
|
||
artist: "Художник",
|
||
graffiti: "Графіті",
|
||
tattoo: "Тату",
|
||
trainer: "Тренер",
|
||
musician: "Музикант",
|
||
judge: "Суддя",
|
||
manager: "Менеджер команди",
|
||
og: "OG"
|
||
}
|
||
},
|
||
memberVisibility: {
|
||
public: {
|
||
label: "Публічно",
|
||
description: "Будь-хто бачить вас у цьому Crew — на публічній сторінці Crew і в пошуку товаришів по Crew."
|
||
},
|
||
crew: {
|
||
label: "Лише Crew",
|
||
description: "Лише підтверджені товариші по Crew і засновник бачать вас тут. Для всіх інших ви — анонімний «прихований учасник». Зауважте: це приватність на рівні застосунку — ваш тег членства все одно публічно існує на Relay, просто ніколи не показується стороннім."
|
||
}
|
||
},
|
||
tagCategory: {
|
||
features: {
|
||
name: "Особливості",
|
||
description: "Перешкоди та рельєф"
|
||
},
|
||
surfaces: {
|
||
name: "Покриття",
|
||
description: "Матеріали та текстури"
|
||
},
|
||
sizes: {
|
||
name: "Розміри",
|
||
description: "Габарити та масштаб"
|
||
},
|
||
stairs: {
|
||
name: "Кількість сходинок",
|
||
description: "Кількість сходинок"
|
||
},
|
||
vibes: {
|
||
name: "Вайб",
|
||
description: "Атмосфера та стан"
|
||
},
|
||
location: {
|
||
name: "Локація",
|
||
description: "Контекст розташування"
|
||
},
|
||
tricks: {
|
||
name: "Трюки",
|
||
description: "Гарно для конкретних трюків"
|
||
}
|
||
},
|
||
spotTagCategory: {
|
||
street: {
|
||
label: "Street",
|
||
description: "Вуличні Spots — сходи, Rails, Ledges"
|
||
},
|
||
park: {
|
||
label: "Park",
|
||
description: "Скейт-Park — публічні чи приватні"
|
||
},
|
||
diy: {
|
||
label: "DIY",
|
||
description: "DIY/саморобні Spots"
|
||
},
|
||
plaza: {
|
||
label: "Plaza",
|
||
description: "Публічні площі зі скейт-дружньою архітектурою"
|
||
}
|
||
},
|
||
status: {
|
||
active: {
|
||
label: "Активний",
|
||
description: "Усе гаразд — катай."
|
||
},
|
||
bust: {
|
||
label: "Bust",
|
||
description: "Високий ризик, що виженуть — охорона чи копи."
|
||
},
|
||
skate_stopped: {
|
||
label: "Закатаний",
|
||
description: "Кноби / заглушки, але частково катабельний."
|
||
},
|
||
closed: {
|
||
label: "Закрито",
|
||
description: "Тимчасово закрито — будівництво або подія."
|
||
},
|
||
gone: {
|
||
label: "Зник",
|
||
description: "Знесено, заасфальтовано чи назавжди огороджено."
|
||
}
|
||
},
|
||
price: {
|
||
free: "FREE",
|
||
trade: "Обмін",
|
||
makeOffer: "Зробити пропозицію",
|
||
offer: "Пропозиція"
|
||
}
|
||
},
|
||
feesUi: {
|
||
feeFeaturedEventLabel: "Подія в рекомендаціях",
|
||
feeFeaturedEventDesc: "Просувайте свою подію на SkateSpots",
|
||
feeFeaturedEventBenefit: "Ваша подія з'являється вгорі сторінки подій",
|
||
feeLabProfileLabel: "Профіль Lab Pro",
|
||
feeLabProfileDesc: "Просувайте свої послуги в The Lab",
|
||
feeLabProfileBenefit: "Значок Pro + рекомендоване розміщення, коли скейтери переглядають The Lab",
|
||
feeFeaturedShopLabel: "Магазин у рекомендаціях",
|
||
feeFeaturedShopDesc: "Просувайте свій скейт-магазин на карті та в каталозі",
|
||
feeFeaturedShopBenefit: "Значок «Перевірено» + рекомендована мітка на карті",
|
||
feeFeaturedTourLabel: "Тур у рекомендаціях",
|
||
feeFeaturedTourDesc: "Просувайте свій тур на SkateSpots",
|
||
feeFeaturedTourBenefit: "Значок Pro + розміщення вгорі, коли скейтери переглядають тури",
|
||
duration7d: "7 днів",
|
||
duration30d: "1 місяць",
|
||
duration90d: "3 місяці",
|
||
duration365d: "12 місяців",
|
||
metaActive: "{{label}} — активний",
|
||
daysRemainingOne: "залишився {{count}} день",
|
||
daysRemainingMany: "залишилося {{count}} днів",
|
||
zapRequestContent: "SkateSpots {{label}} ({{tier}})",
|
||
errGenerate: "Не вдалося створити рахунок",
|
||
paymentReceived: "⚡ Платіж отримано!",
|
||
paymentReceivedDesc: "{{amount}} sats — {{label}} тепер активний.",
|
||
autoPayFailed: "Автооплата не вдалася",
|
||
autoPayFailedDesc: "Оплатіть вручну за допомогою QR або рахунку нижче.",
|
||
payStatusUnknown: "Статус платежу невідомий — можливо, платіж пройшов. Перевірте гаманець, перш ніж платити знову.",
|
||
invoiceCopied: "Рахунок скопійовано!",
|
||
activeBang: "{{label}} активний!",
|
||
chooseDuration: "Оберіть тривалість",
|
||
bestValue: "Найвигідніше",
|
||
perDay: "{{price}}/день",
|
||
validFor: "Дійсний протягом",
|
||
amountLine: "~${{usd}} USD · до {{name}} · {{tier}}",
|
||
payToContinue: "Сплатіть {{amount}} sats, щоб продовжити",
|
||
generating: "Створення рахунку…",
|
||
processing: "Обробка платежу…",
|
||
invoiceQrAlt: "QR-код рахунку Lightning",
|
||
copyInvoice: "Скопіювати рахунок",
|
||
openWallet: "Відкрити гаманець",
|
||
payConnected: "Сплатити з під'єднаного гаманця",
|
||
scanAny: "Скануйте будь-яким Lightning-гаманцем",
|
||
tryAgain: "Спробувати знову",
|
||
proReceiptTitle: "🦧⚡ Sasquatch Pro — ви в грі!",
|
||
proReceiptPass: "Перепустка: {{pass}} ({{sats}} sats)",
|
||
proReceiptActiveUntil: "Активна до: {{until}}",
|
||
proReceiptUnlocked: "Що ви відкрили:",
|
||
proReceiptBullet1: "• Персональний асистент — я читаю ваш Stash, Crews, Spots та оголошення",
|
||
proReceiptBullet2: "• Чернетки дій — виставити спорядження, опублікувати стан Spot, планувати поїздки (ви підтверджуєте)",
|
||
proReceiptBullet3: "• Відповіді, що використовують ваш особистий контекст, а не лише публічні дані",
|
||
proReceiptBullet4: "• ⚡ Ви напряму підтримуєте SkateSpots і зберігаєте його безкоштовним та без реклами",
|
||
proReceiptThanks: "Дякуємо, що зберігаєте SkateSpots безкоштовним та без реклами. А тепер — катати. 🛹",
|
||
proReceiptSubject: "Квитанція Sasquatch Pro",
|
||
receiptContent: "Sasquatch Pro — перепустка прихильника {{tier}} 🦧⚡",
|
||
receiptAlt: "Перепустка прихильника Sasquatch Pro ({{tier}}), дійсна до {{until}}",
|
||
purchaseComment: "Sasquatch Pro — {{tier}} 🦧",
|
||
errLogin: "Увійдіть, щоб перейти на Pro.",
|
||
errStart: "Не вдалося розпочати покупку.",
|
||
errRecord: "Не вдалося записати вашу перепустку."
|
||
},
|
||
cardUi: {
|
||
save: "Зберегти картку в Nostr",
|
||
saved: "Картку збережено",
|
||
savedDesc: "Ваша картка тепер підписана й перевірна.",
|
||
saveFailed: "Не вдалося зберегти картку",
|
||
notPublished: "Не опубліковано",
|
||
titleNeon: "Rider",
|
||
titleRest: "Card",
|
||
saveFrontPng: "Зберегти лицьовий бік (PNG)",
|
||
expired: "ПРОСТРОЧЕНО",
|
||
logoUploaded: "Логотип завантажено",
|
||
logoUploadFailed: "Не вдалося завантажити логотип",
|
||
venue: "Прив'язане місце (необов'язково)",
|
||
venueNone: "Без місця",
|
||
venueHint: "Оберіть один зі своїх Spots, щоб прив'язати цю перепустку до місця. Верифікатор підтвердить, що він ваш.",
|
||
venuePick: "Оберіть своє місце",
|
||
parkNoVenue: "Перепустку Park може видавати лише власник місця — спершу нанесіть Spot, яким володієте, на карту.",
|
||
parkAddVenue: "Додати Spot",
|
||
parkNeedsVenue: "Оберіть місце, яким володієте",
|
||
parkIssued: "Видані перепустки",
|
||
parkRevoke: "Відкликати",
|
||
parkRevoked: "Відкликано",
|
||
parkRevokeFailed: "Не вдалося відкликати",
|
||
v: {
|
||
valid: "Дійсна",
|
||
validDesc: "Підпис дійсний і виданий місцем.",
|
||
expired: "Прострочена",
|
||
expiredDesc: "Минула дата дійсності.",
|
||
revoked: "Відкликана",
|
||
revokedDesc: "Видавець скасував цю перепустку — не приймайте її.",
|
||
invalid: "Недійсна",
|
||
invalidDesc: "Підпис не перевіряється. Не довіряйте їй.",
|
||
notFound: "Не знайдено",
|
||
notFoundDesc: "Немає відповідного запису на Relay.",
|
||
unverifiedIssuer: "Неперевірений видавець",
|
||
unverifiedIssuerDesc: "Ця перепустка вказує місце, яким не володіє ключ видавця.",
|
||
notBound: "Не прив'язана",
|
||
notBoundDesc: "Не прив'язана до місця — нічого не доводить про доступ.",
|
||
noRsvp: "Немає RSVP",
|
||
noRsvpDesc: "У власника немає зареєстрованого RSVP на цю подію.",
|
||
admitted: "Допущено",
|
||
admittedDesc: "Подія організатора + власник підтвердив RSVP.",
|
||
noHolder: "У посиланні немає власника",
|
||
noHolderDesc: "У цьому QR немає власника квитка (`?h=`), тож власника не можна перевірити."
|
||
},
|
||
passes: {
|
||
tab: "Мої перепустки",
|
||
pass: "Перепустка доступу",
|
||
none: "Ще немає перепусток. Коли місце чи організатор видасть вам одну, вона з'явиться тут."
|
||
},
|
||
facets: {
|
||
title: "Показати грані ідентичності",
|
||
crews: "Crews",
|
||
local: "Локальні",
|
||
roles: "Ролі Lab"
|
||
},
|
||
roles: {
|
||
coach: "Тренер",
|
||
filmer: "Оператор",
|
||
editor: "Монтажер",
|
||
photographer: "Фотограф",
|
||
builder: "Будівельник",
|
||
artist: "Художник",
|
||
graffiti: "Графіті",
|
||
tattoo: "Тату",
|
||
trainer: "Тренер",
|
||
musician: "Музикант",
|
||
judge: "Суддя",
|
||
organizer: "Організатор",
|
||
barber: "Барбер"
|
||
},
|
||
crew: {
|
||
crewCard: "CREW CARD",
|
||
crewSub: "Ваш Crew на картці",
|
||
pick: "Оберіть Crew",
|
||
none: "Ви ще не в жодному Crew — спершу приєднайтеся чи створіть.",
|
||
hint: "Картка будується з власних підписаних даних Crew. Редагуйте Crew на його сторінці, щоб змінити її.",
|
||
members: "УЧАСНИКИ",
|
||
spots: "SPOTS",
|
||
est: "Засн. {{year}}",
|
||
openCall: "Відкритий набір",
|
||
verifiedCrew: "Перевірений Crew",
|
||
viewCrew: "Переглянути Crew"
|
||
},
|
||
event: {
|
||
pass: "EVENT PASS",
|
||
passSub: "Перепустка на подію, яку ви відвідуєте",
|
||
pick: "Оберіть подію",
|
||
none: "Ще немає подій — спершу створіть одну або підтвердьте RSVP.",
|
||
hint: "Перепустка будується з власних підписаних даних події. Лише організатор може її змінити.",
|
||
admits: "ДОПУСКАЄ",
|
||
going: "{{count}} йдуть",
|
||
verifiedEvent: "Перевірена подія",
|
||
viewEvent: "Переглянути подію",
|
||
issuePass: "Видати перепустку для реєстрації",
|
||
issuePassBtn: "Видати перепустку",
|
||
issuePassHint: "Підписана перепустка для конкретного відвідувача — він показує її на вході.",
|
||
notOrganiser: "Лише організатор може видавати перепустки",
|
||
passIssued: "Перепустку видано",
|
||
issueFailed: "Не вдалося видати перепустку",
|
||
issuedPasses: "Видані перепустки для реєстрації"
|
||
},
|
||
studio: {
|
||
unsaved: "Незбережені зміни",
|
||
saved: "Збережено",
|
||
saveChanges: "Зберегти зміни",
|
||
allSaved: "Збережено — усе актуально",
|
||
showOnCard: "Показати на картці",
|
||
derived: "З вашого профілю скейтера",
|
||
noSkaterProfile: "Ще немає профілю скейтера —",
|
||
editSkaterProfile: "додайте свої стилі та рівень",
|
||
noPhoto: "Ще немає фото профілю —",
|
||
addPhoto: "додайте його у профілі",
|
||
finishTitle: "Завершіть свою картку",
|
||
finishDesc: "Фото та профіль скейтера зроблять її справжньою.",
|
||
checkPhoto: "Фото профілю",
|
||
checkName: "Відображуване ім'я",
|
||
checkProfile: "Стилі та рівень",
|
||
checkCrew: "Приєднайтеся до Crew",
|
||
moreTypes: "Більше типів карток відкривається, коли ви наносите Spots, якими володієте, приєднуєтеся до Crews або підтверджуєте RSVP на події.",
|
||
accent: "Акцентний колір",
|
||
accentHint: "Перевизначає акцент теми",
|
||
accentClear: "Використати колір теми",
|
||
logo: "Власний логотип / герб",
|
||
logoAdd: "Завантажити",
|
||
logoChange: "Змінити",
|
||
logoClear: "Прибрати"
|
||
},
|
||
back: {
|
||
title: "Друкований зворотний бік",
|
||
desc: "Crews, ролі, спонсори та посилання на звороті",
|
||
showBack: "Показати зворот",
|
||
showFront: "Показати лицьовий бік",
|
||
empty: "Тут ще нічого немає — додайте Crews, ролі чи спонсорів."
|
||
},
|
||
verify: {
|
||
checking: "Перевіряємо картку…",
|
||
notFound: "Картку не знайдено",
|
||
notFoundDesc: "На Relay не знайдено відповідної події. Можливо, її видалено або посилання неправильне.",
|
||
invalid: "Підпис недійсний",
|
||
invalidDesc: "Ця подія існує, але її підпис не перевіряється. Не довіряйте їй.",
|
||
authentic: "Справжня",
|
||
authenticDesc: "Підпис видавця дійсний.",
|
||
kind: "Тип",
|
||
kindPark: "Park Access Card",
|
||
kindRider: "Rider Card",
|
||
kindCrew: "Crew Card",
|
||
kindEvent: "Event pass",
|
||
organiser: "Організатор",
|
||
expired: "Прострочена",
|
||
valid: "Дійсна",
|
||
holder: "Власник",
|
||
ticketHolder: "Власник квитка",
|
||
rsvp: "RSVP",
|
||
rsvpGoing: "Йду",
|
||
rsvpInterested: "Цікавить",
|
||
rsvpNone: "RSVP не знайдено",
|
||
revoked: "Перепустку відкликано",
|
||
revokedDesc: "Видавець скасував цю перепустку — не приймайте її.",
|
||
issuedBy: "Видано",
|
||
accessLevel: "Рівень доступу",
|
||
validThru: "Дійсна до",
|
||
selfIssued: "Статус",
|
||
selfIssuedDesc: "Самовидана картка ідентичності",
|
||
venue: "Місце",
|
||
venueVerified: "Перевірено — ключ власника цього місця збігається з видавцем.",
|
||
venueMismatch: "Ця перепустка вказує місце, яким не володіє ключ видавця.",
|
||
venueNone: "Не прив'язана до місця.",
|
||
viewCard: "Переглянути картку",
|
||
disclaimer: "Дійсний підпис доводить, хто підписав цю картку, — це не доказ навичок чи прав доступу понад те, що видало місце.",
|
||
details: "Деталі",
|
||
invalidLink: "Недійсне посилання",
|
||
invalidLinkDesc: "Це не схоже на дійсне посилання на картку."
|
||
},
|
||
public: {
|
||
invalid: "Це не схоже на дійсне посилання на картку.",
|
||
createYourOwn: "Створіть власну картку",
|
||
editYourCard: "Редагуйте свою картку",
|
||
backToEditor: "Назад до редактора",
|
||
backHome: "На головну",
|
||
notCustomised: "Цей скейтер ще не налаштував свою картку — це стандартний вигляд.",
|
||
verifyNote: "Скануйте QR-код на картці, щоб перевірити її."
|
||
}
|
||
},
|
||
routeUi: {
|
||
destination: "Пункт призначення",
|
||
routeTo: "Маршрут до {{label}}",
|
||
routeToLabel: "Маршрут до",
|
||
search: "Пошук",
|
||
description: "Варіанти маршруту та навігація в застосунку.",
|
||
routeMapAria: "Карта маршруту",
|
||
findingLocation: "Визначаємо ваше місце…",
|
||
plottingRoute: "Прокладаємо маршрут…",
|
||
refiningLocation: "Уточнюємо місце…",
|
||
offlineSavedRoute: "Офлайн · збережений маршрут {{age}}",
|
||
tapMapStart: "Натисніть на карту, щоб задати початкову точку",
|
||
fitRouteAria: "Показати весь маршрут на карті",
|
||
wholeRoute: "Увесь маршрут",
|
||
next: "Далі",
|
||
nextStep: "Далі · крок {{n}}",
|
||
followTheLine: "Рухайтеся по лінії",
|
||
toTheTurn: "до повороту",
|
||
toGo: "залишилось",
|
||
tryAgain: "Спробувати знову",
|
||
mode: {
|
||
foot: "Skate / Пішки",
|
||
bike: "Велосипед",
|
||
moto: "Мото",
|
||
car: "Авто",
|
||
transit: "Транспорт"
|
||
},
|
||
from: "Звідки",
|
||
myLocation: "Моє місце",
|
||
tapTheMap: "Натисніть на карту…",
|
||
chooseOnMap: "Обрати на карті",
|
||
direct: "прямий",
|
||
transferOne: "1 пересадка",
|
||
transfers: "{{count}} пересадок",
|
||
options: "{{count}} варіантів",
|
||
ride: "їхати",
|
||
arrive: "прибуття",
|
||
speedAvg: "{{speed}} км/год у сер.",
|
||
stepsCount: "{{count}} кроків",
|
||
onABoard: "на дошці",
|
||
usesDrivingRoads: "використовує автомобільні дороги",
|
||
drivingEstimate: "оцінка для авто",
|
||
updating: "оновлення…",
|
||
pickMode: "Оберіть режим, щоб побачити маршрут.",
|
||
waitingLocation: "Чекаємо на ваше місце…",
|
||
routeSteps: "Кроки маршруту",
|
||
walkingRoute: "пішохідний маршрут — швидше на дошці",
|
||
planningView: "Режим планування — натисніть «Старт», щоб рухатися з живими поворотами, голосом і прибуттям.",
|
||
leaveNow: "Вирушити зараз",
|
||
departAt: "Виїхати о",
|
||
arriveBy: "Прибути до",
|
||
departureTime: "Час відправлення",
|
||
arrivalTime: "Час прибуття",
|
||
only: "Лише",
|
||
clear: "очистити",
|
||
itinerary: "Маршрут",
|
||
group: {
|
||
bus: "Автобус",
|
||
tram: "Трамвай",
|
||
metro: "Метро",
|
||
train: "Потяг",
|
||
ferry: "Пором"
|
||
},
|
||
walk: "Пішки",
|
||
rideVerb: "Їхати",
|
||
walkLower: "йти",
|
||
rideLower: "їхати",
|
||
toStop: "до",
|
||
track: "колія {{track}}",
|
||
stopOne: "1 зупинка",
|
||
stopsCount: "{{count}} зупинок",
|
||
tickets: "квитки ↗",
|
||
done: "Готово",
|
||
stop: "Зупинити",
|
||
start: "Старт",
|
||
arrived: "Ви прибули. 🛹",
|
||
voiceOnNote: "Екран залишається увімкненим · голос увімкнено — повороти та прибуття озвучуються.",
|
||
voiceOffNote: "Екран залишається увімкненим · голос вимкнено.",
|
||
followNote: "Повороти, голос і прибуття під час руху. Тримає екран увімкненим.",
|
||
voiceOffAria: "Вимкнути голосові підказки",
|
||
voiceOnAria: "Увімкнути голосові підказки",
|
||
voiceStart: "Початок навігації",
|
||
voiceArrived: "Ви прибули",
|
||
voiceIn: "Через {{metres}} метрів, {{instruction}}",
|
||
voiceContinue: "продовжуйте",
|
||
voiceContinueCaps: "Продовжуйте",
|
||
errPermissionDenied: "Доступ до місцезнаходження заборонено.",
|
||
errWaitingGps: "Чекаємо на GPS…",
|
||
errPermissionDeniedLong: "Доступ до місцезнаходження заборонено. Увімкніть геолокацію, щоб прокласти маршрут звідси.",
|
||
errNoLocation: "Не вдалося визначити ваше місце. Спробуйте знову.",
|
||
errNoLocationShort: "Не вдалося визначити ваше місце.",
|
||
errTransitNoRouteFiltered: "Немає маршруту на цей час чи вид транспорту — спробуйте інший час або додайте більше видів.",
|
||
errTransitNoRoute: "Тут не знайдено маршруту громадським транспортом — можливо, цей регіон не публікує відкриті розклади.",
|
||
errTransitUnreachable: "Не вдалося зв'язатися зі службою транспорту. Перевірте з'єднання та спробуйте знову.",
|
||
errRoutingBusy: "Служба маршрутизації зараз зайнята — спробуйте за мить.",
|
||
errNoRouteMode: "Немає маршруту для цього режиму — можливо, пункт призначення поза дорожньою мережею. Спробуйте інший режим.",
|
||
errRoutingUnreachable: "Не вдалося зв'язатися зі службою маршрутизації. Перевірте з'єднання та спробуйте знову.",
|
||
departures: "Відправлення",
|
||
upcomingFrom: "Найближчі відправлення від {{stop}}",
|
||
loadingDepartures: "Завантаження відправлень…",
|
||
noDepartures: "На цій зупинці не знайдено найближчих відправлень.",
|
||
live: "наживо",
|
||
cancelled: "скасовано",
|
||
refresh: "Оновити",
|
||
tripLoginTitle: "Увійдіть, щоб зберегти",
|
||
tripLoginDesc: "Увійдіть, щоб зберегти цю подорож як Колекцію.",
|
||
tripCollectionTitle: "Скейт-подорож до {{destination}} 🛹",
|
||
tripCollectionDesc: "План подорожі від The Sasquatch — {{count}} днів у {{destination}}.",
|
||
tripCollectionDescOne: "План подорожі від The Sasquatch — {{count}} день у {{destination}}.",
|
||
tripSavedTitle: "Збережено в Колекції 🦧",
|
||
tripSavedDesc: "Вашу подорож до {{destination}} додано в закладки.",
|
||
tripSaveFailed: "Не вдалося зберегти",
|
||
tripSaveFailedDesc: "Спробуйте за секунду.",
|
||
daysInDestinationOne: "{{count}} день у {{destination}}",
|
||
daysInDestination: "{{count}} днів у {{destination}}",
|
||
wetForecast: "Дощовий прогноз — знайдіть локальний Crew для накритих/внутрішніх варіантів.",
|
||
dayLabel: "День {{n}}",
|
||
freeSkate: "Вільне катання — досліджуйте та знімайте. 🎥",
|
||
tapToBook: "торкніться, щоб забронювати / Zap ⚡",
|
||
localCrews: "Локальні Crews",
|
||
saving: "Збереження…",
|
||
savedToCollections: "Збережено в Колекції",
|
||
saveSpotOne: "Зберегти {{count}} Spot у Колекцію",
|
||
saveSpots: "Зберегти {{count}} Spots у Колекцію",
|
||
flights: "Рейси",
|
||
stays: "Проживання",
|
||
gettingAround: "Пересування",
|
||
noMiddleman: "Я планую катання — рейси та проживання відкриваються на справжніх сайтах (без KYC, без посередників).",
|
||
ageJustNow: "щойно",
|
||
ageMinAgo: "{{count}} хв тому",
|
||
ageHourAgo: "{{count}} год тому",
|
||
ageDayAgo: "{{count}} дн тому",
|
||
skateRightHere: "просто тут",
|
||
skateMin: "~{{count}} хв їзди",
|
||
skateHours: "~{{hours}} год їзди",
|
||
maneuver: {
|
||
headOut: "Вирушайте",
|
||
arrive: "Прибуття на Spot",
|
||
continueStraight: "Продовжуйте",
|
||
bearLeft: "Тримайтесь лівіше",
|
||
bearRight: "Тримайтесь правіше",
|
||
turnLeft: "Поверніть ліворуч",
|
||
turnRight: "Поверніть праворуч",
|
||
sharpLeft: "Різко ліворуч",
|
||
sharpRight: "Різко праворуч",
|
||
turn: "Поверніть",
|
||
keepLeft: "Тримайтесь ліворуч",
|
||
keepRight: "Тримайтесь праворуч",
|
||
takeFork: "Тримайтесь розгалуження",
|
||
merge: "Влийтеся в потік",
|
||
roundabout: "Проїдьте кругове",
|
||
takeRamp: "З'їзд на рампу",
|
||
takeExit: "Скористайтеся з'їздом"
|
||
},
|
||
maneuverOnto: "{{instruction}} на {{road}}"
|
||
},
|
||
sasquatchUi: {
|
||
live: "наживо",
|
||
offline: "офлайн",
|
||
genericTitle: "Помічник SkateSpots 🦧",
|
||
genericGreeting: "Йо! Я The Sasquatch. Питай мене будь-що про Spots, події, тренерів, спорядження чи те, як працює застосунок. У мене живі дані з Relay SkateSpots!",
|
||
q1: "Сплануй мені 3 дні в Лісабоні",
|
||
q2: "Знайди Spots поблизу",
|
||
q3: "Є найближчі події?",
|
||
q4: "Що таке Crews?",
|
||
q5: "Як працюють zaps?",
|
||
q6: "Що таке Nostr?",
|
||
q7: "Що таке Мій Stash?",
|
||
q8: "Це безкоштовно?",
|
||
bubbleTitle: "Натисніть і перетягніть, щоб перемістити · Торкніться, щоб відкрити",
|
||
openGuideAria: "Відкрити путівник Sasquatch",
|
||
hideAria: "Сховати помічника Sasquatch",
|
||
hide: "Сховати помічника",
|
||
showAria: "Показати помічника Sasquatch",
|
||
activeUntil: "Активний до {{date}}",
|
||
platformOwner: "Власник платформи",
|
||
upgradeTitle: "Перейти на Sasquatch Pro",
|
||
goPro: "Go Pro",
|
||
goProBlurb: "Персональний ШІ · від 2k sats",
|
||
aiBalanceTitle: "Баланс кредиту ШІ Sasquatch (лише для власника) — поповніть на {{provider}}",
|
||
aiChip: "⚡ ШІ {{balance}}",
|
||
minimizeToBubbleAria: "Згорнути в бульбашку",
|
||
minimize: "Згорнути",
|
||
closePanelAria: "Закрити панель",
|
||
close: "Закрити",
|
||
askLab: "Спитати про Coaching та Filming",
|
||
askMap: "Спитати про Spots, магазини та спорядження",
|
||
askAnything: "Питай мене будь-що 🛹",
|
||
quickQuestions: "Швидкі запитання:",
|
||
you: "🧑 Ви",
|
||
thinking: "думаю...",
|
||
inputPlaceholder: "Питайте про Spots, події, тренерів...",
|
||
liveDataFrom: "Живі дані з",
|
||
nostrRelays: "Nostr Relay",
|
||
clear: "очистити",
|
||
gettingLocation: "📍 Визначаємо ваше місце…",
|
||
findingClosest: "🔍 Шукаємо найближчі Spots…",
|
||
checkingLive: "🔍 Перевіряємо живі дані…",
|
||
planningTrip: "🗺️ Плануємо вашу подорож до {{destination}}...",
|
||
searchingRelays: "🔍 Шукаємо в Relay: {{tool}}...",
|
||
perk1: "Персональний асистент — Sasquatch читає ваш власний Stash, Crews, Spots та оголошення",
|
||
perk2: "Чернетки дій: виставити спорядження, опублікувати скейт-статус, спланувати подорож — ви підтверджуєте, перш ніж щось публікується",
|
||
perk3: "Відповіді використовують ваш особистий контекст, а не лише публічні дані",
|
||
perk4: "⚡ Прямо підтримуйте SkateSpots і зберігайте його безкоштовним та без реклами",
|
||
welcomeTitle: "Дякуємо за підтримку Sasquatch Pro! 🦧⚡",
|
||
welcomeDesc: "Платіж надіслано — ваша перепустка активується, щойно провайдер підтвердить її (зазвичай протягом хвилини). Дякуємо, що зберігаєте вулиці вільними.",
|
||
invoiceCopied: "Рахунок скопійовано",
|
||
dialogDesc: "Підсильте свій ШІ-скейт-путівник. 100% коштів фінансує безкоштовний застосунок без реклами.",
|
||
proSupporter: "Ви прихильник Pro ⚡",
|
||
extendPrompt: "Хочете продовжити? Оберіть тариф нижче, щоб додати часу.",
|
||
scanToPayPre: "Скануйте, щоб сплатити",
|
||
scanToPayAmount: "{{sats}} sats",
|
||
scanToPayPost: "за {{label}} Pro",
|
||
invoiceQrAlt: "QR-код рахунку Lightning",
|
||
copyInvoice: "Скопіювати рахунок",
|
||
ivePaid: "Я сплатив",
|
||
ivePaidHint: "Натисніть «Я сплатив» після підтвердження гаманцем — це запише вашу перепустку на вашу ідентичність Nostr.",
|
||
freeStaysPre: "Безкоштовний Sasquatch залишається безкоштовним — публічний пошук Spots/подій/тренерів, планування подорожей + повний глосарій трюків. Pro додає ",
|
||
freeStaysEmphasis: "персональний + дійовий",
|
||
freeStaysPost: " шар.",
|
||
loginFirst: "Спершу увійдіть, щоб перейти на Pro.",
|
||
paysTo: "Платить на",
|
||
overLightning: "через Lightning. Прив'язано до вашого npub.",
|
||
popular: "Популярне",
|
||
sats: "sats",
|
||
extend: "Продовжити",
|
||
done: "Готово!",
|
||
cancelledNothing: "Скасовано — нічого не опубліковано.",
|
||
draftReview: "Чернетка — перегляньте й підтвердьте",
|
||
statusTextPlaceholder: "Текст статусу",
|
||
titlePlaceholder: "Заголовок",
|
||
priceSatsPlaceholder: "Ціна (sats)",
|
||
conditionPlaceholder: "Стан",
|
||
cancel: "Скасувати",
|
||
aiTitle: "Sasquatch AI",
|
||
owner: "Власник",
|
||
notConfigured: "не налаштовано",
|
||
unavailable: "недоступно",
|
||
satsValue: "{{balance}} sats",
|
||
theNode: "вузол",
|
||
lowBalance: "Баланс закінчується — поповніть на {{provider}}, інакше ШІ перейде на провайдера без ключа.",
|
||
aiDesc: "ШІ з оплатою за запит, що фінансується в sats через Routstr. Поповнюється, коли баланс низький.",
|
||
tier7d: "7 днів",
|
||
tier1m: "1 місяць",
|
||
tier3m: "3 місяці",
|
||
tier1y: "1 рік",
|
||
badgeTry: "Спробувати",
|
||
badgeOff20: "знижка 20%",
|
||
badgeBest: "Найвигідніше · знижка 40%",
|
||
draftPostStatusTitle: "Опублікувати скейт-статус",
|
||
draftAutoExpires: "Автоматично спливає через {{count}} хв",
|
||
draftPostStatusCta: "Опублікувати статус",
|
||
draftCategory: "Категорія: {{value}}",
|
||
draftSize: "Розмір: {{value}}",
|
||
draftCondition: "Стан: {{value}}",
|
||
draftMaxPrice: "Макс. ціна: {{price}} {{currency}}",
|
||
draftPriceOpen: "Ціна: відкрита",
|
||
draftLookingForTitle: "Шукаю «{{title}}»",
|
||
draftWantedCta: "Опублікувати оголошення «шукаю»",
|
||
draftPrice: "Ціна: {{price}} {{currency}}",
|
||
draftPriceOffer: "Ціна: зробіть пропозицію",
|
||
draftListTitle: "Виставити «{{title}}» на продаж",
|
||
draftPublishCta: "Опублікувати оголошення",
|
||
statusPosted: "Статус опубліковано 🛹",
|
||
wantedPublished: "Оголошення «шукаю» опубліковано 🔎",
|
||
listingPublished: "Оголошення опубліковано 💸",
|
||
mustBeLoggedIn: "Ви маєте увійти."
|
||
},
|
||
sasquatchChat: {
|
||
faq: {
|
||
hi: "Привіт! Я The Sasquatch 🦧 Твій ШІ-скейт-путівник. Питай мене про Spots, події, тренерів, спорядження — чи будь-що про застосунок. Що тобі потрібно?",
|
||
hello: "Дарова! 🛹 Я The Sasquatch. Питай мене про скейт-Spots, події, тренерів чи те, як працює застосунок. Як справи?",
|
||
hey: "Гей, скейтере! 🤙 Питай мене про Spots поблизу, найближчі події, тренерів чи будь-що про SkateSpots.",
|
||
whoAreYou: "Я The Sasquatch 🦧 — ШІ-путівник SkateSpots. Я вмію знаходити скейт-Spots по всьому світу, шукати події, тренерів, операторів та оголошення спорядження. Усе працює на живих даних Nostr. Питай!",
|
||
whatCanYouDo: "Я вмію знаходити скейт-Spots за містом чи країною, шукати найближчі події, знаходити тренерів та операторів у The Lab, шукати оголошення спорядження й відповідати на запитання про те, як працює застосунок. Спробуй: «Spots у Бангкоку» або «знайди тренера»! 🛹",
|
||
whatIsNostr: "Nostr — це простий відкритий протокол для децентралізованих соцмереж. Уявіть Twitter, але жодна компанія ним не керує — ви використовуєте криптографічні ключі замість імен користувачів, обираєте, які Relay зберігають ваші дані (або запускаєте власний), і один акаунт працює в усіх застосунках Nostr! 🔑",
|
||
isThisPrivate: "Ось чесний розклад 🛡️\n\n• Ваше **місцезнаходження GPS залишається на вашому пристрої** — «Поблизу» лише центрує карту. Воно ніколи не надсилається нам і не публікується.\n• **Spots, які ви додаєте, публічні** (у цьому сенс спільної карти) — тож не ставте мітку на своїх вхідних дверях.\n• **Особисті повідомлення та чати Crew зашифровані від кінця до кінця** — їх можуть читати лише учасники.\n• Як і будь-який сайт, сервери, до яких ви підключаєтеся (тайли карт, Relay), бачать ваш **IP**. Хочете приховати й це? Використовуйте VPN або Tor.\n\nПовні деталі на [сторінці приватності](/privacy). 🛹",
|
||
privacy: "Коротко 🛡️: ваш GPS ніколи не покидає пристрій, Spots, які ви публікуєте, публічні за задумом, а особисті повідомлення й чати Crew зашифровані від кінця до кінця. Сервери все одно бачать ваш IP (нормально для будь-якого сайту) — VPN або Tor це приховає, якщо хочете. Повний розбір на [сторінці приватності](/privacy).",
|
||
amITracked: "SkateSpots вас не відстежує — без реклами, без профілювання аналітикою, без продажу даних, і немає сервера SkateSpots, що збирає ваше місцезнаходження. Ваш GPS залишається на пристрої. Єдине, що бачать сервери (тайли карт, Relay), — ваш **IP** — як і на будь-якому сайті. Використовуйте VPN або Tor, щоб це приховати. Більше на [сторінці приватності](/privacy). 🛡️",
|
||
doYouTrack: "Ні — без відстеження, без реклами, без збирання даних. Ваш GPS залишається на пристрої, і немає центрального сервера, що вас логує. Сервери, до яких ви підключаєтеся, можуть бачити ваш IP (як будь-який сайт); VPN/Tor це приховає. Дивіться [сторінку приватності](/privacy). 🛹",
|
||
vpn: "Цілком необов'язково, але слушно, якщо хочете додаткової приватності 🛡️. VPN приховує ваш **IP** (приблизне місце) від серверів, з якими спілкується SkateSpots — тайлів карт, Relay тощо. Оберіть провайдера без логів, якому довіряєте (напр. Mullvad); уникайте сумнівних безкоштовних.\n\nЗауваження: VPN **не** приховує Spots, які ви публікуєте (вони публічні), і не вмикайте GPS браузера, якщо хочете лишатися анонімним. Повні деталі на [сторінці приватності](/privacy).",
|
||
tor: "Tor Browser дає найсильнішу приватність IP — він маршрутизує вас через кілька Relay, тож сервери не бачать ваш справжній IP 🧅. Компроміс: повільніше, а карти й деякі Relay Nostr можуть гальмувати чи блокувати виходи Tor. Чудово для надобережних.\n\nПам'ятайте: Tor приховує ваш IP, а не Spots, які ви публікуєте, і не вмикайте GPS браузера, якщо мета — анонімність. Більше на [сторінці приватності](/privacy).",
|
||
hideMyIp: "Два безкоштовні варіанти 🛡️: **надійний VPN** (просто, швидко — приховує ваш IP за їхніми серверами) або **Tor Browser** (максимум приватності, повільніше). Будь-який із них заважає серверам, до яких підключається SkateSpots, бачити ваш справжній IP. Зауважте, вони не приховують Spots, які ви публікуєте. Дивіться [сторінку приватності](/privacy).",
|
||
isMyLocation: "Ваше місце в безпеці 📍 — «Поблизу» зчитує ваш GPS лише на пристрої, щоб центрувати карту й сортувати найближчі Spots. Воно ніколи не публікується в Nostr, не надсилається нам, не передається. Публічні лише Spots, які ви свідомо додаєте. Деталі на [сторінці приватності](/privacy).",
|
||
whatAreZaps: "Zaps — це миттєві чайові в Bitcoin Lightning, надіслані через Nostr! Натисніть ⚡ на будь-якому вмісті, надішліть sats напряму в гаманець автора. Як «лайк», але зі справжніми грошима. Миттєво, напряму між людьми, без посередників. ⚡",
|
||
howToLogin: "Два способи:\n1. **Розширення браузера** (комп'ютер): встановіть Alby або nos2x, тоді натисніть «Увійти»\n2. **Новий користувач**: натисніть «Зареєструватися», щоб згенерувати ключі. Завантажте свій nsec (секретний ключ) і ЗБЕРЕЖІТЬ ЙОГО — це ваш акаунт назавжди!",
|
||
whatIsCashu: "Вбудований Bitcoin-гаманець! Токени Cashu ecash, забезпечені Lightning — працюють офлайн на скейт-Spots, з фокусом на приватність (мінти не можуть відстежувати платежі). Перейдіть до Гаманця в Налаштуваннях, щоб скористатися. 🥜",
|
||
whatIsNwc: "Nostr Wallet Connect — як USB-C для Lightning-гаманців. Підключіть Alby, Minibits, Zeus або Coinos один раз — і надсилайте Zap одним кліком назавжди. Зашифровано, ви контролюєте ліміти витрат. 🔌⚡",
|
||
isItFree: "100% безкоштовно. Без реклами, без підписок, без корпоративного лайна. Створено скейтерами для скейтерів. Фінансується спільнотою через Angor — перегляньте сторінку Прихильників. Ви також можете заробляти Bitcoin через чайові спільноти за якісні Spots. 🛹",
|
||
whatCanIDo: "Відкривайте Spots по всьому світу на карті, наймайте професіоналів у The Lab (тренери, оператори, фотографи, монтажери, будівельники рамп), катайтеся з Crew, приєднуйтеся до подій, беріть тури, купуйте/продавайте спорядження, ведіть свій приватний Stash, надсилайте Zap авторам, перевіряйте погоду на Spot і будуйте децентралізовану скейт-спільноту!",
|
||
whatIsTheLab: "The Lab — це місце, де ви наймаєте професіоналів скейт-сцени: тренерів, операторів, фотографів, відеомонтажерів та будівельників рамп/Park/DIY. Кожен може бути окремою людиною або колективом (Crew/студія) — учасники підтверджують власними ключами, тож усе легітимно. Усе на Nostr, без фейкових акаунтів. 🎓",
|
||
whatIsACrew: "Crews — це ваша скейт-сім'я, прив'язана до карти — ті, з ким ви катаєтеся РАЗОМ, а не кого наймаєте. Кожен Crew має домашню територію на карті (бірюзові мітки), домашні Spots, учасників, вайб і маніфест. Учасники підтверджують власним ключем. Створіть свій у Crews → «Створити Crew». 🤘",
|
||
whatAreCrews: "Crews — це ваша скейт-сім'я, прив'язана до карти — ті, з ким ви катаєтеся РАЗОМ, а не кого наймаєте. Кожен Crew має домашню територію на карті (бірюзові мітки), домашні Spots, учасників і маніфест. Учасники підтверджують власним ключем. Перейдіть на вкладку Crews, щоб створити чи приєднатися! 🤘",
|
||
howToStartACrew: "Перейдіть на вкладку Crews → «Створити Crew». Назвіть його, позначте домашню територію на карті, додайте вайб (або власний #хештег), прив'яжіть домашні Spots і додайте учасників за npub. Кожен учасник підтверджує власним ключем, тож склад легітимний. 🤘",
|
||
whatIsMyStash: "Мій Stash — це ваш ПРИВАТНИЙ зашифрований сховок для спорядження (шифрування NIP-44). Відстежуйте свої Deck, Trucks, Wheels, взуття — із місцем зберігання, станом, рідкістю та ціною. Лише ВИ можете це читати, якщо не позначите предмети публічними. Чудово для страховки чи планування обміну. 🎒",
|
||
whatIsStash: "Мій Stash — це ваш ПРИВАТНИЙ зашифрований інвентар спорядження. Записуйте все, що маєте — стан, де зберігається, вартість — усе зашифровано, тож бачите лише ви. Позначайте предмети публічними, якщо хочете продати чи похвалитися. 🎒",
|
||
whatIsABuilder: "Будівельники — це Crew з рамп/Park/DIY у The Lab, яких можна найняти, щоб збудувати переходи, Bowls, Rails чи цілий Park. Вони вказують, що будують, матеріали, масштаб проєкту й можуть мати ліцензію/страховку. Часто це колективи — і вони можуть прив'язувати збудовані Spots до карти. 🏗️",
|
||
whatIsANutzap: "Nutzaps (NIP-61) — це чайові ecash, надіслані через Nostr — приватні токени Cashu, надіслані Zap напряму комусь. Ви можете налаштувати ОТРИМАННЯ nutzap у Гаманці. (Надсилання повних nutzap впроваджується — поки що використовуйте Lightning zaps.) 🥜⚡",
|
||
whatIsClink: "CLINK — це рідний для Nostr платіжний код («noffer»). Магазини, Crews і фахівці The Lab можуть додати його, щоб ви могли їм платити без Lightning-адреси — ви побачите кнопку «Pay via CLINK» із QR-кодом. Скануйте його гаманцем CLINK, як-от ShockWallet. 🔗⚡ [специфікації](https://clinkme.dev/specs.html) [застосунки](https://clinkme.dev/apps.html)",
|
||
whatIsNoffer: "Noffer — це платіжний код CLINK — багаторазовий, рідний для Nostr спосіб отримувати оплату без вебсервера чи Lightning-адреси. Додайте свій у профілі магазину/Crew/Lab, і люди зможуть платити вам напряму. 🔗",
|
||
whatAreTours: "Тури — це організовані скейт-подорожі — локальні сесії, національні роуд-тріпи чи світові destruction-тури. Знаходьте їх на карті чи в розділі Турів, зустрічайтеся й катайте новий рельєф разом з місцевими. 🗺️🛹",
|
||
whatIsAShop: "Скейт-магазини — це місцеві магазини, позначені на карті. Відкривайте й підтримуйте справжні офлайн- (чи онлайн-) скейт-магазини у своєму районі — деякі навіть приймають Bitcoin. 🏪",
|
||
howToSellGear: "Перейдіть до Gear Swap / Маркетплейсу й створіть оголошення (NIP-99). Додайте фото, ціну в sats, стан і за бажанням прив'яжіть до Spot, щоб воно з'явилося на карті. Покупці надсилають Zap або пишуть вам напряму. 🛹💸",
|
||
supporters: "SkateSpots фінансується спільнотою через Angor (децентралізований краудфандинг на Bitcoin) — без реклами, без інвесторів, без продажу даних. Перегляньте сторінку Прихильників, щоб підтримати проєкт і зберегти вулиці вільними. ❤️⚡",
|
||
trustScore: "Оцінки довіри (0–100) на базі Relatr. Аналізує вашу мережу Nostr: підписників, активність, залучення, Zaps. Вище = більше довіри. Допомагає фільтрувати ботів і спам. Перегляньте будь-який профіль, щоб побачити оцінку. 🛡️",
|
||
whatRelay: "SkateSpots використовує: 🛹 relay.skate-spots.org (основний, у списку дозволених для якості) + relay.ditto.pub (глобальний) + purplepag.es (агрегатор профілів). Ваші дані реплікуються на всіх них для надійності.",
|
||
tripPlanner: "Назвіть місто, і я збудую скейт-подорож день за днем 🗺️ — Spots, події, тренери та локальні Crews, з урахуванням погоди (дощовий день = порада від Crew щодо накритих Spots). Спробуйте «сплануй мені 3 дні в Лісабоні». Я можу зберегти все в Колекцію й передати вас до рейсів/проживання на справжніх сайтах (без KYC, без посередників). 🛹",
|
||
planATrip: "Просто скажіть «сплануй мені 3 дні в Барселоні» (чи будь-якому місті), і я розпишу Spots, сесії, тренерів та локальні Crews на кожен день. Збережіть як Колекцію — і гайда катати. 🗺️🛹",
|
||
sasquatchPro: "**Sasquatch Pro** 🦧⚡ — це Lightning-перепустка прихильника, що відкриває мою персональну сторону:\n\n• 🧠 **Персональний асистент** — я читаю ваш власний Stash, Crews, Spots та оголошення\n• ✨ **Чернетки дій** — виставити спорядження, опублікувати ваш скейт-статус, спланувати подорожі (ви завжди підтверджуєте, перш ніж щось публікується)\n• 💬 **Особистий контекст** — мої відповіді використовують ваші дані, а не лише публічні результати\n• ⚡ **Підтримка проєкту** — ви зберігаєте SkateSpots безкоштовним та без реклами\n\nБезкоштовний Sasquatch залишається безкоштовним: публічний пошук Spots/подій/тренерів/Crew, глосарій і планування подорожей працюють без Pro. Pro лише додає *персональні* речі. Натисніть **⚡ Go Pro** вгорі. Тарифи: 7 днів ~2k sats, 1 місяць ~5k, 3 місяці ~12k, 1 рік ~36k.",
|
||
proPerks: "Переваги Pro 🦧⚡: персональний асистент (читає ваш Stash/Crews/Spots/оголошення), чернетки дій (виставити спорядження, опублікувати статус, спланувати подорожі — ви підтверджуєте) та відповіді, що використовують ваш особистий контекст. До того ж ви напряму підтримуєте SkateSpots і зберігаєте його безкоштовним та без реклами. Безкоштовне залишається безкоштовним — Pro додає персональний шар. Натисніть **⚡ Go Pro** вгорі.",
|
||
proVersion: "Pro-версія мене 🦧⚡ додає **персонального асистента**: я можу читати ваш власний Stash, Crews, Spots та оголошення, готувати чернетки дій (виставити спорядження, опублікувати статус, спланувати подорож — ви завжди підтверджуєте першими) й використовувати ваш особистий контекст у відповідях. Це також напряму підтримує проєкт. Безкоштовний Sasquatch (пошук Spots/подій/тренерів/Crew, глосарій, планувальник подорожей) залишається безкоштовним. Натисніть **⚡ Go Pro** вгорі.",
|
||
perks: "Переваги Pro 🦧⚡: персональний асистент (ваш Stash/Crews/Spots/оголошення), чернетки дій, які ви підтверджуєте, та відповіді, що використовують ваш власний контекст — до того ж ви зберігаєте застосунок безкоштовним та без реклами. Натисніть **⚡ Go Pro** вгорі.",
|
||
goPro: "Натисніть кнопку **⚡ Go Pro** вгорі, щоб відкрити вікно оновлення. Pro відкриває мого персонального асистента (Stash/Crews/Spots/оголошення) та чернетки дій, а також напряму підтримує проєкт. Платіть Lightning — від 7 днів ~2k sats до 1 року ~36k sats. Безкоштовні функції залишаються безкоштовними. 🦧",
|
||
proPricing: "Тарифи Pro (платіть Lightning ⚡): **7 днів** ~2 000 sats (~$1.20), **1 місяць** ~5 000 sats (~$3), **3 місяці** ~12 000 sats (~$7, знижка 20%), **1 рік** ~36 000 sats (~$21, найвигідніше). Натисніть **⚡ Go Pro** вгорі.",
|
||
howMuchIsPro: "Тарифи Pro: 7 днів ~2 000 sats, 1 місяць ~5 000 sats, 3 місяці ~12 000 sats (знижка 20%), 1 рік ~36 000 sats (найвигідніше). Платіть Lightning ⚡. Натисніть **⚡ Go Pro** вгорі.",
|
||
upgrade: "Щоб перейти на Sasquatch Pro, натисніть кнопку **⚡ Go Pro** вгорі. Платіть Lightning (від 7 днів ~2k sats до 1 року ~36k). Pro відкриває мого персонального асистента та чернетки дій, а також напряму підтримує проєкт. 🦧⚡"
|
||
},
|
||
statsTitle: "📊 **SkateSpots у цифрах**",
|
||
weatherTemp: "• {{temp}}°C (відчувається {{feels}}°C)",
|
||
weatherSkateability: "• Катабельність: **{{label}}** ({{score}}/100)",
|
||
weatherError: "Не вдалося прочитати погоду зараз. Спробуйте за секунду. 🌧️",
|
||
labelSpots: "Spots",
|
||
labelEvents: "події",
|
||
labelLabPros: "фахівці Lab",
|
||
labelCrews: "Crews",
|
||
labelShops: "скейт-магазини",
|
||
labelTours: "тури",
|
||
labelGear: "оголошення спорядження",
|
||
unnamed: "Без назви",
|
||
emptyWhere: " у **{{place}}**",
|
||
emptyResult: "Зараз не знайдено жодного {{label}}{{where}} 🦧\n\nМожливо, їх ще не додали — або Relay повільно відповіли. Спробуйте за мить, перевірте написання або [додайте перший на карту](https://skate-spots.org/map). 🛹",
|
||
foundTitle: "{{emoji}} Знайдено **{{count}}** {{label}}:\n{{lines}}{{more}}",
|
||
moreResults: "\n\n…і ще **{{count}}** — [побачити всі на карті](https://skate-spots.org/map) 🗺️",
|
||
locationDenied: "Я не бачу вашого місцезнаходження — нічого ніколи не покидає ваш пристрій; я читаю його локально лише коли ви просите, а браузер щойно відмовив. Натисніть 🎯 **Поблизу** на карті або назвіть місто: «Spots у Бангкоку». 🛹",
|
||
noNearbySpots: "Поблизу ще немає нанесених Spots 🦧 — [будьте першим, хто додасть](https://skate-spots.org/create-spot). 🛹",
|
||
closestTitle: "Найближчі до вас зараз:",
|
||
closestFooter: "_Обчислено на вашому пристрої — ваше місцезнаходження його не покидало._",
|
||
proNudge: "Це річ **Sasquatch Pro** 🦧⚡ — з Pro я можу читати ваш Stash, Crews, Spots та оголошення, готувати чернетки оголошень спорядження, «шукаю» та скейт-статусів і планувати ваші подорожі. Це Lightning-перепустка прихильника, що зберігає SkateSpots безкоштовним та без реклами. Натисніть кнопку **⚡ Go Pro** вгорі, щоб відкрити. 🛹",
|
||
draftingProPerk: "Готувати чернетки дій (публікація статусу, виставлення спорядження) — це перевага **Sasquatch Pro** 🦧⚡ — натисніть **⚡ Go Pro** вгорі, щоб відкрити.",
|
||
draftIntro: "Ось чернетка — перегляньте її й натисніть, щоб опублікувати. Нічого не публікується, доки ви не підтвердите. 🛹",
|
||
draftFailed: "Мені не вдалося до кінця зібрати ту чернетку — спробуйте знову розповісти деталі (напр. «вистав мої Wheels Spitfire за 8000 sats»).",
|
||
tripAskCity: "Куди? Назвіть місто (напр. «сплануй мені 3 дні в Лісабоні»), і я збудую подорож. 🗺️",
|
||
tripEmptyMap: "На карті ще нічого немає для **{{destination}}** 🦧 — будьте першим, хто додасть Spots на [skate-spots.org](https://skate-spots.org). Щойно місцеві додадуть Spots, Crews та події, я збудую вам повну подорож.",
|
||
tripLocked: "Зафіксовано місію **{{destination}}** для вас 🛹 — Spots, сесії та місцеві нижче. Змініть або збережіть.",
|
||
tripFailed: "Не вдалося отримати живі дані, щоб спланувати це зараз. Спробуйте за мить! 🛹",
|
||
tripEmptyMapLocal: "На карті ще нічого немає для **{{destination}}** 🦧 — будьте першим на [skate-spots.org](https://skate-spots.org).",
|
||
tripMissionLocal: "Ось місія **{{destination}}** 🛹 — Spots, сесії та місцеві нижче.",
|
||
relayFailed: "Relay зараз не відповіли вчасно 🛰️ — зазвичай це повільне з'єднання, а не відсутній Spot. Спробуйте ще раз за мить. 🛹",
|
||
couldNotProcess: "Хм, не вдалося це обробити. Спробуйте перефразувати!",
|
||
freeTierFallback: "Це потребує ШІ-міркування — функція **Sasquatch Pro** ⚡🦧\n\nЯ все ще можу знайти **Spots, події, тренерів, Crews, магазини, тури й спорядження** напряму з Relay — спитайте, напр. «Spots у Барселоні» — а [Глосарій](/glossary) охоплює 150+ трюків і термінів. Натисніть **⚡ Go Pro** вгорі, щоб відкрити ШІ-відповіді.",
|
||
aiDownFallback: "Мій ШІ-мозок зараз бере паузу 🦧 — але я все ще поруч:\n\n• 🗺️ [Карта](/) — Spots, магазини, події поблизу\n• 🧪 [The Lab](/lab) — тренери, оператори, монтажери\n• 📖 [Глосарій](/glossary) — 150+ трюків і термінів\n• 👥 [Crews](/crews) — знайдіть своїх\n\nАбо просто назвіть **місто** («Spots у Барселоні») чи **трюк** («що таке nollie») — і я відповім одразу. 🛹",
|
||
wentWrong: "Щось пішло не так на моєму боці. Спробуйте за секунду! 🦧",
|
||
publishError: "Не вдалося опублікувати: {{error}}. Спробуйте за секунду.",
|
||
unknownError: "невідома помилка"
|
||
}
|
||
};
|
||
|
||
export { ukBatch2 };
|
||
export default ukBatch2;
|