refactor: video languages to single source of truth
This commit is contained in:
parent
0098a69d7e
commit
1128823172
5 changed files with 19 additions and 50 deletions
|
|
@ -4,6 +4,8 @@
|
|||
// `DOCUMENT_RESOURCES_NO_IMAGE` depending on the `useDocuments` flag,
|
||||
// and always renders `GENERAL_RESOURCES_WITH_IMAGE` above it.
|
||||
|
||||
import { hasVideoTranslation } from '~/utils/videoUrls'
|
||||
|
||||
const S3_URL = 'https://s3.doxa.life/'
|
||||
|
||||
export interface ResourceWithImage {
|
||||
|
|
@ -42,9 +44,6 @@ const DOCUMENT_LANGS: Record<string, string[]> = {
|
|||
'initial-proposal': ['en', 'es', 'fr']
|
||||
}
|
||||
|
||||
// Per-language Vimeo URLs for the promo video — same ids as videoUrls.ts.
|
||||
const VIDEO_LANGS = ['en', 'es', 'fr']
|
||||
|
||||
function s3LangCode(docId: string, lang: string): string {
|
||||
const langs = DOCUMENT_LANGS[docId] ?? ['en']
|
||||
return langs.includes(lang) ? lang : 'en'
|
||||
|
|
@ -55,10 +54,6 @@ function hasDocumentTranslation(docId: string, lang: string): boolean {
|
|||
return langs.includes(lang)
|
||||
}
|
||||
|
||||
function hasVideoTranslation(lang: string): boolean {
|
||||
return VIDEO_LANGS.includes(lang)
|
||||
}
|
||||
|
||||
export function resourcesWithImage(videoUrl: (lang: string) => string): ResourceWithImage[] {
|
||||
return [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -11,3 +11,10 @@ const VIDEO_URLS: Record<string, string> = {
|
|||
export function getVideoUrl(langCode: string): string {
|
||||
return VIDEO_URLS[langCode] ?? VIDEO_URLS.en!
|
||||
}
|
||||
|
||||
// The languages the video actually exists in, derived from VIDEO_URLS so that
|
||||
// adding a translation is one edit rather than two. Callers use this for the
|
||||
// "In English" hint, since getVideoUrl falls back silently.
|
||||
export function hasVideoTranslation(langCode: string): boolean {
|
||||
return Object.hasOwn(VIDEO_URLS, langCode)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,8 @@
|
|||
{
|
||||
<<<<<<< Updated upstream
|
||||
"Compliment": "إطراء",
|
||||
"Daily Prayer Coverage": "تغطية الصلاة اليومية",
|
||||
"%count% people groups in %countries% countries": "%count% مجموعة شعبية في %countries% دولة",
|
||||
"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.": "تضم %region% %count% مجموعة شعبية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة الشعبية.",
|
||||
=======
|
||||
"Compliment": "إطراء",
|
||||
"Daily Prayer Coverage": "تغطية صلاة يومية",
|
||||
"%count% people groups in %countries% countries": "%count% مجموعة بشرية في %countries% دولة",
|
||||
"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.": "تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.",
|
||||
>>>>>>> Stashed changes
|
||||
"All Regions": "جميع المناطق",
|
||||
"By Region": "حسب المنطقة",
|
||||
"Countries": "الدول",
|
||||
|
|
@ -19,11 +13,7 @@
|
|||
"I'd like to receive email updates from the DOXA partnership.": "أرغب في تلقي تحديثات عبر البريد الإلكتروني من شراكة DOXA.",
|
||||
"Other": "أخرى",
|
||||
"Outside this region": "خارج هذه المنطقة",
|
||||
<<<<<<< Updated upstream
|
||||
"People Groups": "مجموعات شعبية",
|
||||
"people groups engaged": "مجموعات شعبية مُخْدُومَة",
|
||||
=======
|
||||
"People Groups": "مجموعات بشرية",
|
||||
"Please choose what your message is about.": "يُرجى اختيار موضوع رسالتك.",
|
||||
"Please enter a message.": "يُرجى إدخال رسالة.",
|
||||
"Please enter a valid email address.": "يُرجى إدخال عنوان بريد إلكتروني صالح.",
|
||||
|
|
@ -36,8 +26,7 @@
|
|||
"We'd love to hear from you — tell us what you love, share a suggestion, or report a problem.": "يسعدنا أن نسمع منك: أخبرنا بما يعجبك، أو شارك اقتراحًا، أو أبلغ عن مشكلة.",
|
||||
"What is your message about?": "عمّ تدور رسالتك؟",
|
||||
"Your name (optional)": "اسمك (اختياري)",
|
||||
"people groups engaged": "مجموعات بشرية مُنخرِطة",
|
||||
>>>>>>> Stashed changes
|
||||
"people groups engaged": "مجموعات شعبية مُخْدُومَة",
|
||||
"Regions": "المناطق",
|
||||
"See %region% dashboard": "عرض لوحة معلومات %region%",
|
||||
"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.": "توجد %count% مجموعة شعبية في %country%. تحقق من الخريطة لمعرفة المجموعات الشعبية الواقعة على حدود هذه الدولة أيضًا.",
|
||||
|
|
|
|||
|
|
@ -1,18 +1,8 @@
|
|||
{
|
||||
"Compliment": "प्रशंसा",
|
||||
"Daily Prayer Coverage": "दैनिक प्रार्थना कवरेज",
|
||||
<<<<<<< Updated upstream
|
||||
"%count% people groups in %countries% countries": "%countries% देशों में %count% जनसमूह",
|
||||
"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.": "%region% में %countries% देशों के %count% जनसमूह हैं। हर बिंदु का रंग बताता है कि उस जनसमूह के लिए कितने लोग प्रार्थना कर रहे हैं।",
|
||||
"A church-led commitment to pray, give, and send so that gospel access begins": "कलीसिया की अगुवाई में प्रार्थना करने, दान देने और भेजने की प्रतिबद्धता, ताकि सुसमाचार तक पहुँच शुरू हो",
|
||||
"A clean, elegant theme for DOXA Life - Engaging every people group by 2033": "DOXA Life के लिए एक स्वच्छ, सुरुचिपूर्ण थीम — 2033 तक हर जनसमूह के साथ सहभागिता",
|
||||
"A simple path to faithful obedience": "विश्वासयोग्य आज्ञाकारिता का सरल मार्ग",
|
||||
"About": "हमारे बारे में",
|
||||
"Actively help surface and support potential goers, encouraging those God may be calling to cross cultures and serve this people group directly.": "सक्रिय रूप से संभावित जाने वालों को पहचानने और उनका साथ देने में मदद करें, और उन लोगों को प्रोत्साहित करें जिन्हें परमेश्वर संभवतः संस्कृतियों को पार करके इस जनसमूह की सीधे सेवा करने के लिए बुला रहे हैं।",
|
||||
"Additional tools to help your church stay engaged in prayer for this people group": "इस जनसमूह के लिए आपकी कलीसिया को प्रार्थना में लगे रहने में मदद करने वाले अतिरिक्त साधन",
|
||||
=======
|
||||
"%count% people groups in %countries% countries": "%countries% देशों में %count% लोगों के समूह",
|
||||
"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.": "%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।",
|
||||
"All Regions": "सभी क्षेत्र",
|
||||
"By Region": "क्षेत्र के अनुसार",
|
||||
"Countries": "देश",
|
||||
|
|
@ -40,13 +30,12 @@
|
|||
"Regions": "क्षेत्र",
|
||||
"See %region% dashboard": "%region% डैशबोर्ड देखें",
|
||||
"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.": "%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",
|
||||
"A church-led commitment to pray, give, and send so that gospel access begins": "सुसमाचार की पहुँच शुरू हो सके, इसके लिए चर्च के नेतृत्व में प्रार्थना करने, दान देने और भेजने की प्रतिबद्धता।",
|
||||
"A clean, elegant theme for DOXA Life - Engaging every people group by 2033": "DOXA Life के लिए एक स्वच्छ, सुरुचिपूर्ण थीम - 2033 तक प्रत्येक जनसमूह को संलग्न करना",
|
||||
"A simple path to faithful obedience": "वफादार आज्ञाकारिता का एक सरल मार्ग",
|
||||
"About": "बारे में",
|
||||
"Actively help surface and support potential goers, encouraging those God may be calling to cross cultures and serve this people group directly.": "संभावित जाने वालों की पहचान करने और उन्हें समर्थन देने में सक्रिय रूप से मदद करें, और उन लोगों को प्रोत्साहित करें जिन्हें ईश्वर शायद विभिन्न संस्कृतियों को पार करके इस जनसमूह की सीधे सेवा करने के लिए बुला रहे हैं।",
|
||||
"Additional tools to help your church stay engaged in prayer for this people group": "इस जनसमूह के लिए प्रार्थना में आपकी चर्च को संलग्न बनाए रखने में मदद करने के लिए अतिरिक्त उपकरण",
|
||||
>>>>>>> Stashed changes
|
||||
"A church-led commitment to pray, give, and send so that gospel access begins": "कलीसिया की अगुवाई में प्रार्थना करने, दान देने और भेजने की प्रतिबद्धता, ताकि सुसमाचार तक पहुँच शुरू हो",
|
||||
"A clean, elegant theme for DOXA Life - Engaging every people group by 2033": "DOXA Life के लिए एक स्वच्छ, सुरुचिपूर्ण थीम — 2033 तक हर जनसमूह के साथ सहभागिता",
|
||||
"A simple path to faithful obedience": "विश्वासयोग्य आज्ञाकारिता का सरल मार्ग",
|
||||
"About": "हमारे बारे में",
|
||||
"Actively help surface and support potential goers, encouraging those God may be calling to cross cultures and serve this people group directly.": "सक्रिय रूप से संभावित जाने वालों को पहचानने और उनका साथ देने में मदद करें, और उन लोगों को प्रोत्साहित करें जिन्हें परमेश्वर संभवतः संस्कृतियों को पार करके इस जनसमूह की सीधे सेवा करने के लिए बुला रहे हैं।",
|
||||
"Additional tools to help your church stay engaged in prayer for this people group": "इस जनसमूह के लिए आपकी कलीसिया को प्रार्थना में लगे रहने में मदद करने वाले अतिरिक्त साधन",
|
||||
"Adopt": "अपनाएँ",
|
||||
"Adopt an unengaged people group": "एक अनसंपर्कित जनसमूह को अपनाएँ",
|
||||
"Adopt people group": "जनसमूह को अपनाएँ",
|
||||
|
|
|
|||
|
|
@ -1,14 +1,8 @@
|
|||
{
|
||||
<<<<<<< Updated upstream
|
||||
"Compliment": "Благодарность",
|
||||
"Daily Prayer Coverage": "Ежедневный молитвенный охват",
|
||||
"%count% people groups in %countries% countries": "%count% народов в %countries% странах",
|
||||
"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.": "В регионе %region% — %count% народов в %countries% странах. Цвет каждой точки показывает, сколько человек молится за этот народ.",
|
||||
=======
|
||||
"Compliment": "Благодарность",
|
||||
"Daily Prayer Coverage": "Ежедневная молитвенная поддержка",
|
||||
"%count% people groups in %countries% countries": "%count% групп людей в %countries% странах",
|
||||
"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.": "В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.",
|
||||
>>>>>>> Stashed changes
|
||||
"All Regions": "Все регионы",
|
||||
"By Region": "По регионам",
|
||||
"Countries": "Страны",
|
||||
|
|
@ -19,11 +13,7 @@
|
|||
"I'd like to receive email updates from the DOXA partnership.": "Я хочу получать новости партнёрства DOXA по электронной почте.",
|
||||
"Other": "Другое",
|
||||
"Outside this region": "За пределами этого региона",
|
||||
<<<<<<< Updated upstream
|
||||
"People Groups": "Народы",
|
||||
"people groups engaged": "вовлечённые народы",
|
||||
=======
|
||||
"People Groups": "Группы людей",
|
||||
"Please choose what your message is about.": "Выберите, о чём ваше сообщение.",
|
||||
"Please enter a message.": "Введите сообщение.",
|
||||
"Please enter a valid email address.": "Введите действительный адрес электронной почты.",
|
||||
|
|
@ -36,8 +26,7 @@
|
|||
"We'd love to hear from you — tell us what you love, share a suggestion, or report a problem.": "Мы будем рады услышать вас: расскажите, что вам нравится, поделитесь предложением или сообщите о проблеме.",
|
||||
"What is your message about?": "О чём ваше сообщение?",
|
||||
"Your name (optional)": "Ваше имя (необязательно)",
|
||||
"people groups engaged": "вовлечённые группы людей",
|
||||
>>>>>>> Stashed changes
|
||||
"people groups engaged": "вовлечённые народы",
|
||||
"Regions": "Регионы",
|
||||
"See %region% dashboard": "Открыть панель: %region%",
|
||||
"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.": "Страна %country% насчитывает %count% народов. Проверьте также на карте народы, расположенные вдоль границ этой страны.",
|
||||
|
|
|
|||
Loading…
Reference in a new issue