Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 16 additions & 4 deletions src/components/FieldError.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,31 @@ export interface FieldErrorProps {
id?: string;
name: string;
messages?: Record<string, string>;
error?: string;
}

export default function FieldError({ id, name, messages }: FieldErrorProps) {
export default function FieldError({
id,
name,
messages,
error,
}: FieldErrorProps) {
const formContext = useFormContext();
const errors =
formContext?.state === "error" ? formContext.validation?.[name] : undefined;

if (!errors || errors.length === 0) return null;
let errorMessage;
if (error) {
errorMessage = error;
} else if (errors?.[0]) {
errorMessage = messages?.[errors[0]] ?? "Invalid";
}

if (!errorMessage) return null;

const errorMessage = messages?.[errors[0]] ?? "Invalid";
return (
<div id={id} className="text-red-700 text-sm">
{errorMessage}
{error ?? errorMessage}
</div>
);
}
78 changes: 78 additions & 0 deletions src/messages/ar.json
Original file line number Diff line number Diff line change
Expand Up @@ -459,6 +459,84 @@
"رؤيا"
]
},
"ChapterPickerDialog": {
"title": "اختر الفصل",
"reference": "مرجع الفصل",
"back_to_books": "العودة إلى الأسفار",
"invalid": "يرجى إدخال مرجع فصل صحيح",
"cancel": "إلغاء",
"go": "اذهب",
"close": "إغلاق منتقي الفصول",
"verse_reference": "{bookId, select, 1 {التكوين} 2 {الخروج} 3 {اللاويين} 4 {العدد} 5 {التثنية} 6 {يشوع} 7 {القضاة} 8 {راعوث} 9 {صموئيل الأول} 10 {صموئيل الثاني} 11 {الملوك الأول} 12 {الملوك الثاني} 13 {أخبار الأيام الأول} 14 {أخبار الأيام الثاني} 15 {عزرا} 16 {نحميا} 17 {استير} 18 {أيوب} 19 {المزامير} 20 {الأمثال} 21 {الجامعة} 22 {نشيد الأنشاد} 23 {إشعياء} 24 {أرميا} 25 {مراثي أرميا} 26 {حزقيال} 27 {دانيال} 28 {هوشع} 29 {يوئيل} 30 {عاموس} 31 {عوبديا} 32 {يونان} 33 {ميخا} 34 {ناحوم} 35 {حبقوق} 36 {صفنيا} 37 {حجاي} 38 {زكريا} 39 {ملاخي} 40 {متى} 41 {مرقس} 42 {لوقا} 43 {يوحنا} 44 {أعمال الرسل} 45 {رومية} 46 {كورنثوس الأولى} 47 {كورنثوس الثانية} 48 {غلاطية} 49 {أفسس} 50 {فيلبي} 51 {كولوسي} 52 {تسالونيكي الأولى} 53 {تسالونيكي الثانية} 54 {تيموثاوس الأولى} 55 {تيموثاوس الثانية} 56 {تيطس} 57 {فليمون} 58 {العبرانيين} 59 {يعقوب} 60 {بطرس الأولى} 61 {بطرس الثانية} 62 {يوحنا الأولى} 63 {يوحنا الثانية} 64 {يوحنا الثالثة} 65 {يهوذا} 66 {رؤيا} other {}} {chapter}",
"book_names": [
"التكوين",
"الخروج",
"اللاويين",
"العدد",
"التثنية",
"يشوع",
"القضاة",
"راعوث",
"صموئيل الأول",
"صموئيل الثاني",
"الملوك الأول",
"الملوك الثاني",
"أخبار الأيام الأول",
"أخبار الأيام الثاني",
"عزرا",
"نحميا",
"استير",
"أيوب",
"المزامير",
"الأمثال",
"الجامعة",
"نشيد الأنشاد",
"إشعياء",
"أرميا",
"مراثي أرميا",
"حزقيال",
"دانيال",
"هوشع",
"يوئيل",
"عاموس",
"عوبديا",
"يونان",
"ميخا",
"ناحوم",
"حبقوق",
"صفنيا",
"حجاي",
"زكريا",
"ملاخي",
"متى",
"مرقس",
"لوقا",
"يوحنا",
"أعمال الرسل",
"رومية",
"كورنثوس الأولى",
"كورنثوس الثانية",
"غلاطية",
"أفسس",
"فيلبي",
"كولوسي",
"تسالونيكي الأولى",
"تسالونيكي الثانية",
"تيموثاوس الأولى",
"تيموثاوس الثانية",
"تيطس",
"فليمون",
"العبرانيين",
"يعقوب",
"بطرس الأولى",
"بطرس الثانية",
"يوحنا الأولى",
"يوحنا الثانية",
"يوحنا الثالثة",
"يهوذا",
"رؤيا"
]
},
"ResetPasswordPage": {
"title": "إعادة تعيين كلمة المرور",
"form": {
Expand Down
78 changes: 78 additions & 0 deletions src/messages/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -441,6 +441,84 @@
"Revelation"
]
},
"ChapterPickerDialog": {
"title": "Choose chapter",
"reference": "Chapter reference",
"back_to_books": "Back to books",
"invalid": "Please enter a valid chapter reference",
"cancel": "Cancel",
"go": "Go",
"close": "Close chapter picker",
"verse_reference": "{bookId, select, 1 {Genesis} 2 {Exodus} 3 {Leviticus} 4 {Numbers} 5 {Deuteronomy} 6 {Joshua} 7 {Judges} 8 {Ruth} 9 {1 Samuel} 10 {2 Samuel} 11 {1 Kings} 12 {2 Kings} 13 {1 Chronicles} 14 {2 Chronicles} 15 {Ezra} 16 {Nehemiah} 17 {Esther} 18 {Job} 19 {Psalm} 20 {Proverbs} 21 {Ecclesiastes} 22 {Song of Songs} 23 {Isaiah} 24 {Jeremiah} 25 {Lamentations} 26 {Ezekiel} 27 {Daniel} 28 {Hosea} 29 {Joel} 30 {Amos} 31 {Obadiah} 32 {Jonah} 33 {Micah} 34 {Nahum} 35 {Habakkuk} 36 {Zephaniah} 37 {Haggai} 38 {Zechariah} 39 {Malachi} 40 {Matthew} 41 {Mark} 42 {Luke} 43 {John} 44 {Acts} 45 {Romans} 46 {1 Corinthians} 47 {2 Corinthians} 48 {Galatians} 49 {Ephesians} 50 {Philippians} 51 {Colossians} 52 {1 Thessalonians} 53 {2 Thessalonians} 54 {1 Timothy} 55 {2 Timothy} 56 {Titus} 57 {Philemon} 58 {Hebrews} 59 {James} 60 {1 Peter} 61 {2 Peter} 62 {1 John} 63 {2 John} 64 {3 John} 65 {Jude} 66 {Revelation} other {}} {chapter}",
"book_names": [
"Genesis",
"Exodus",
"Leviticus",
"Numbers",
"Deuteronomy",
"Joshua",
"Judges",
"Ruth",
"1 Samuel",
"2 Samuel",
"1 Kings",
"2 Kings",
"1 Chronicles",
"2 Chronicles",
"Ezra",
"Nehemiah",
"Esther",
"Job",
"Psalm",
"Proverbs",
"Ecclesiastes",
"Song of Songs",
"Isaiah",
"Jeremiah",
"Lamentations",
"Ezekiel",
"Daniel",
"Hosea",
"Joel",
"Amos",
"Obadiah",
"Jonah",
"Micah",
"Nahum",
"Habakkuk",
"Zephaniah",
"Haggai",
"Zechariah",
"Malachi",
"Matthew",
"Mark",
"Luke",
"John",
"Acts",
"Romans",
"1 Corinthians",
"2 Corinthians",
"Galatians",
"Ephesians",
"Philippians",
"Colossians",
"1 Thessalonians",
"2 Thessalonians",
"1 Timothy",
"2 Timothy",
"Titus",
"Philemon",
"Hebrews",
"James",
"1 Peter",
"2 Peter",
"1 John",
"2 John",
"3 John",
"Jude",
"Revelation"
]
},
"ResetPasswordPage": {
"title": "Reset Password",
"form": {
Expand Down
Loading
Loading