From 8d7f757c1639f8376e95b90ae78adbbb5e8a9e3f Mon Sep 17 00:00:00 2001 From: Ahmad Bilal Date: Wed, 28 Aug 2024 11:08:42 +0500 Subject: [PATCH] feat(types): added pkg types --- src/types/azkar-categories.enum.ts | 136 +++++++++++++++++++++++++++++ src/types/chapter.ts | 10 +++ src/types/dialect.enum.ts | 4 + src/types/hadith-lang.enum.ts | 10 +++ src/types/hadith.enum.ts | 12 +++ src/types/hijri-date.ts | 20 +++++ src/types/index.ts | 10 +++ src/types/prayer-api-response.ts | 18 ++++ src/types/prayer-timings.ts | 11 +++ src/types/prayer.metadata.ts | 27 ++++++ src/types/tafseer.enum.ts | 30 +++++++ src/types/translation.enum.ts | 21 +++++ src/types/zikr.ts | 8 ++ 13 files changed, 317 insertions(+) create mode 100644 src/types/azkar-categories.enum.ts create mode 100644 src/types/chapter.ts create mode 100644 src/types/dialect.enum.ts create mode 100644 src/types/hadith-lang.enum.ts create mode 100644 src/types/hadith.enum.ts create mode 100644 src/types/hijri-date.ts create mode 100644 src/types/index.ts create mode 100644 src/types/prayer-api-response.ts create mode 100644 src/types/prayer-timings.ts create mode 100644 src/types/prayer.metadata.ts create mode 100644 src/types/tafseer.enum.ts create mode 100644 src/types/translation.enum.ts create mode 100644 src/types/zikr.ts diff --git a/src/types/azkar-categories.enum.ts b/src/types/azkar-categories.enum.ts new file mode 100644 index 0000000..5d4d88b --- /dev/null +++ b/src/types/azkar-categories.enum.ts @@ -0,0 +1,136 @@ +export enum AzkarCategoriesEnum { + Morning = 'أذكار الصباح', + Evening = 'أذكار المساء', + WakeUp = 'أذكار الاستيقاظ من النوم', + WearingClothes = 'دعاء لبس الثوب', + NewClothes = 'دعاء لبس الثوب الجديد', + PlacingClothes = 'ما يقول إذا وضع الثوب', + EnteringToilet = 'دعاء دخول الخلاء - الحمام', + LeavingToilet = 'دعاء الخروج من الخلاء - الحمام', + BeforeWudu = 'الذكر قبل الوضوء', + AfterWudu = 'الذكر بعد الفراغ من الوضوء', + LeavingHouse = 'الذكر عند الخروج من المنزل', + EnteringHouse = 'الذكر عند دخول المنزل', + GoingToMosque = 'دعاء الذهاب إلى المسجد', + EnteringMosque = 'دعاء دخول المسجد', + LeavingMosque = 'دعاء الخروج من المسجد', + Adhan = 'أذكار الآذان', + OpeningSupplication = 'دعاء الاستفتاح', + Ruku = 'دعاء الركوع', + RisingFromRuku = 'دعاء الرفع من الركوع', + Sujood = 'دعاء السجود', + SittingBetweenSujood = 'دعاء الجلسة بين السجدتين', + SujoodTilawa = 'دعاء سجود التلاوة', + Tashahhud = 'التشهد', + SalutationOnProphet = 'الصلاة على النبي بعد التشهد', + FinalTashahhudSupplication = 'الدعاء بعد التشهد الأخير قبل السلام', + AfterSalam = 'الأذكار بعد السلام من الصلاة', + Istikhara = 'دعاء صلاة الاستخارة', + BeforeSleep = 'أذكار النوم', + TurningDuringSleep = 'الدعاء إذا تقلب في الليل', + Nightmares = 'دعاء الفزع في النوم و من بلي بالوحشة', + Dreams = 'ما يفعل من رأى الرؤيا أو الحلم في النوم', + WitrDua = 'دعاء قنوت الوتر', + AfterWitr = 'الذكر عقب السلام من الوتر', + Anxiety = 'دعاء الهم والحزن', + Distress = 'دعاء الكرب', + MeetingEnemy = 'دعاء لقاء العدو و ذي السلطان', + FearOfOppression = 'دعاء من خاف ظلم السلطان', + AgainstEnemy = 'الدعاء على العدو', + FearOfPeople = 'ما يقول من خاف قوما', + WhisperingsInFaith = 'دعاء من أصابه وسوسة في الإيمان', + DebtRelief = 'دعاء قضاء الدين', + WhisperingsInPrayer = 'دعاء الوسوسة في الصلاة و القراءة', + DifficultTasks = 'دعاء من استصعب عليه أمر', + Repentance = 'ما يقول ويفعل من أذنب ذنبا', + ExpelShaytan = 'دعاء طرد الشيطان و وساوسه', + UnwantedEvents = 'الدعاء حينما يقع ما لا يرضاه أو غلب على أمره', + CongratulateNewborn = 'ﺗﻬنئة المولود له وجوابه', + ProtectChildren = 'ما يعوذ به الأولاد - رقية', + VisitingSick = 'الدعاء للمريض في عيادته', + VirtueOfVisitingSick = 'فضل عيادة المريض', + SickDespair = 'دعاء المريض الذي يئس من حياته', + LastWords = 'تلقين المحتضر', + Consolation = 'دعاء من أصيب بمصيبة', + ClosingEyesOfDeceased = 'الدعاء عند إغماض الميت', + PrayerForDeceased = 'الدعاء للميت في الصلاة عليه', + PrayerForChildDeceased = 'الدعاء للفرط في الصلاة عليه', + Condolence = 'دعاء التعزية', + BuryingTheDeceased = 'الدعاء عند إدخال الميت القبر', + AfterBurial = 'الدعاء بعد دفن الميت', + VisitingGraves = 'دعاء زيارة القبور', + Wind = 'دعاء الريح', + Thunder = 'دعاء الرعد', + RainSeeking = 'من أدعية الاستسقاء', + Rainfall = 'الدعاء إذا نزل المطر', + AfterRainfall = 'الذكر بعد نزول المطر', + ClearSky = 'من أدعية الاستصحاء', + SeeingCrescent = 'دعاء رؤية الهلال', + BreakingFast = 'الدعاء عند إفطار الصائم - الصوم', + BeforeEating = 'الدعاء قبل الطعام', + AfterEating = 'الدعاء عند الفراغ من الطعام', + GuestPrayingForHost = 'دعاء الضيف لصاحب الطعام', + ImpliedPrayersForFood = 'التعريض بالدعاء لطلب الطعام أو الشراب', + FastingGuestMeal = 'الدعاء إذا أفطر عند أهل بيت - طعام', + FastingIfPreparesMeal = 'دعاء الصائم إذا حضر الطعام ولم يفطر', + FastingIfAngry = 'ما يقول الصائم إذا سابه أحد', + FirstFruit = 'الدعاء عند رؤية باكورة الثمر', + Sneezing = 'دعاء العطاس', + ResponseToKafirSneezing = 'ما يقال للكافر إذا عطس فحمد الله', + PrayerForMarriage = 'الدعاء للمتزوج', + MarriedManBuyingAnimal = 'دعاء المتزوج و شراء الدابة', + PrayerBeforeIntercourse = 'الدعاء قبل إتيان الزوجة - الجماع', + Anger = 'دعاء الغضب', + SeeingAffliction = 'دعاء من رأى مبتلى', + Gathering = 'ما يقال في اﻟﻤﺠلس', + ExpiationOfGathering = 'كفارة اﻟﻤﺠلس', + PrayerForForgiveness = 'الدعاء لمن قال غفر الله لك', + GratitudeForKindness = 'الدعاء لمن صنع إليك معروفا', + ProtectionFromDajjal = 'ما يعصم الله به من الدجال', + PrayerForBrotherlyLove = 'الدعاء لمن قال إني أحبك في الله', + PrayerForWealthyFriend = 'الدعاء لمن عرض عليك ماله', + PrayerForLoanRepayment = 'الدعاء لمن أقرض عند القضاء', + FearOfShirk = 'دعاء الخوف من الشرك', + PrayerForBlessing = 'الدعاء لمن قال بارك الله فيك', + DislikeOfSuperstition = 'دعاء كراهية الطيرة', + TravelPrayer = 'دعاء الركوب', + PrayerForTravel = 'دعاء السفر', + EnteringVillageOrTown = 'دعاء دخول القرية أو البلدة', + EnteringMarket = 'دعاء دخول السوق', + AnimalInDistress = 'الدعاء إذا تعس المركوب', + TravelerPrayingForResident = 'دعاء المسافر للمقيم', + ResidentPrayingForTraveler = 'دعاء المقيم للمسافر', + MagnificationAndGlorification = 'التكبير و التسبيح في سير السفر', + DawnPrayerForTraveler = 'دعاء المسافر إذا أسحر', + PrayerForStopping = 'الدعاء إذا نزل مترلا في سفر أو غيره', + ReturningFromTravel = 'ذكر الرجوع من السفر', + JoyAndSorrow = 'ما يقول من أتاه أمر يسره أو يكرهه', + PrayerForProphet = 'فضل الصلاة على النبي صلى الله عليه و سلم', + SpreadingSalaam = 'إفشاء السلام', + RespondingToKafirSalaam = 'كيف يرد السلام على الكافر إذا سلم', + HearingAnimals = 'الدعاء عند سماع صياح الديك ونهيق الحمار', + HearingDogAtNight = 'دعاء نباح الكلب بالليل', + PrayerForInsulting = 'الدعاء لمن سببته', + PrayerAfterPraise = 'ما يقول المسلم إذا مدح المسلم', + PrayerForPurification = 'ما يقول المسلم إذا زكي', + HajjOrUmrahTalbiyah = 'كيف يلبي المحرم في الحج أو العمرة ؟', + MagnificationAtBlackStone = 'التكبير إذا أتى الركن الأسود', + BetweenYamaniAndBlackStone = 'الدعاء بين الركن اليماني والحجر الأسود', + OnSafaAndMarwa = 'دعاء الوقوف على الصفا والمروة', + DayOfArafah = 'الدعاء يوم عرفة', + SacredMonument = 'الذكر عند المشعر الحرام', + StoningTheJamaraat = 'التكبير عند رمي الجمار مع كل حصاة', + ExpressionOfAmazement = 'دعاء التعجب والأمر السار', + WhenHappy = 'ما يفعل من أتاه أمر يسره', + PainInBody = 'ما يقول من أحس وجعا في جسده', + ProtectionFromEvilEye = 'دعاء من خشي أن يصيب شيئا بعينه', + Panic = 'ما يقال عند الفزع', + Slaughtering = 'ما يقول عند الذبح أو النحر', + RepellingShaytan = 'ما يقول لرد كيد مردة الشياطين', + SeekingForgiveness = 'الاستغفار و التوبة', + Glorification = 'التسبيح، التحميد، التهليل، التكبير', + ProphetGlorification = 'كيف كان النبي يسبح؟', + ActsOfGoodness = 'من أنواع الخير والآداب الجامعة', + QuranSupplications = 'الرُّقية الشرعية من القرآن الكريم', + SunnahSupplications = 'الرُّقية الشرعية من السنة النبوية', +} diff --git a/src/types/chapter.ts b/src/types/chapter.ts new file mode 100644 index 0000000..0d0b078 --- /dev/null +++ b/src/types/chapter.ts @@ -0,0 +1,10 @@ +export interface Chapter { + name: string; // Arabic name of the Chapter + type: string; // Type of Chapter (e.g., Makki, Madani) + englishName: string; // English name of the Chapter + number: number; // Number of the Chapter + numberOfVerses: number; // Number of verses in the Chapter + numberOfWords: number; // Number of words in the Chapter + numberOfLetters: number; // Number of letters in the Chapter + verses: string[]; // Array of verses in the Chapter +} diff --git a/src/types/dialect.enum.ts b/src/types/dialect.enum.ts new file mode 100644 index 0000000..a8d8c3a --- /dev/null +++ b/src/types/dialect.enum.ts @@ -0,0 +1,4 @@ +export enum DialectEnum { + Hafs = 'hafs', + Watsh = 'warsh', +} diff --git a/src/types/hadith-lang.enum.ts b/src/types/hadith-lang.enum.ts new file mode 100644 index 0000000..aed5718 --- /dev/null +++ b/src/types/hadith-lang.enum.ts @@ -0,0 +1,10 @@ +export enum HadithLangEnum { + Arabic = 'ara', + Bengali = 'ben', + English = 'eng', + Indonesian = 'ind', + Russian = 'rus', + Tamil = 'tam', + Turkish = 'tur', + Urdu = 'urd', +} diff --git a/src/types/hadith.enum.ts b/src/types/hadith.enum.ts new file mode 100644 index 0000000..27cf296 --- /dev/null +++ b/src/types/hadith.enum.ts @@ -0,0 +1,12 @@ +export enum HadithBook { + AbuDawud = 'Abu Dawud', + Bukhari = 'Bukhari', + Dehlawi = 'Dehlawi', + IbnMajah = 'Ibn Majah', + MuwattaMalik = 'Muwatta Malik', + Muslim = 'Muslim', + Nasai = 'Nasai', + Tirmidhi = 'Tirmidhi', + Nawawi40 = 'Nawawi 40', + Qudsi = 'Hadith Qudsi 40', +} diff --git a/src/types/hijri-date.ts b/src/types/hijri-date.ts new file mode 100644 index 0000000..2e0b32e --- /dev/null +++ b/src/types/hijri-date.ts @@ -0,0 +1,20 @@ +export interface HijriDate { + date: string; + format: string; + day: string; + weekday: { + en: string; + ar: string; + }; + month: { + number: number; + en: string; + ar: string; + }; + year: string; + designation: { + abbreviated: string; + expanded: string; + }; + holidays: string[]; +} diff --git a/src/types/index.ts b/src/types/index.ts new file mode 100644 index 0000000..487e1e4 --- /dev/null +++ b/src/types/index.ts @@ -0,0 +1,10 @@ +export * from './azkar-categories.enum'; +export * from './chapter'; +export * from './dialect.enum'; +export * from './hadith-lang.enum'; +export * from './hadith.enum'; +export * from './hijri-date'; +export * from './prayer-timings'; +export * from './tafseer.enum'; +export * from './translation.enum'; +export * from './zikr'; diff --git a/src/types/prayer-api-response.ts b/src/types/prayer-api-response.ts new file mode 100644 index 0000000..4591fe6 --- /dev/null +++ b/src/types/prayer-api-response.ts @@ -0,0 +1,18 @@ +import { HijriDate } from './hijri-date'; +import { PrayerTimings } from './prayer-timings'; +import { PrayerMeta } from './prayer.metadata'; + +export interface PrayerApiResponse { + code: number; + status: string; + data: { + timings: PrayerTimings; + date: { + readable: string; + timestamp: string; + gregorian: unknown; + hijri: HijriDate; + }; + meta: PrayerMeta; + }; +} diff --git a/src/types/prayer-timings.ts b/src/types/prayer-timings.ts new file mode 100644 index 0000000..cd05b13 --- /dev/null +++ b/src/types/prayer-timings.ts @@ -0,0 +1,11 @@ +export interface PrayerTimings { + Fajr: string; + Sunrise: string; + Dhuhr: string; + Asr: string; + Sunset: string; + Maghrib: string; + Isha: string; + Imsak: string; + Midnight: string; +} diff --git a/src/types/prayer.metadata.ts b/src/types/prayer.metadata.ts new file mode 100644 index 0000000..130f59b --- /dev/null +++ b/src/types/prayer.metadata.ts @@ -0,0 +1,27 @@ +export interface PrayerMeta { + latitude: number; + longitude: number; + timezone: string; + method: { + id: number; + name: string; + params: { + Fajr: number; + Isha: number; + }; + }; + latitudeAdjustmentMethod: string; + midnightMode: string; + school: string; + offset: { + Imsak: number; + Fajr: number; + Sunrise: number; + Dhuhr: number; + Asr: number; + Maghrib: number; + Sunset: number; + Isha: number; + Midnight: number; + }; +} diff --git a/src/types/tafseer.enum.ts b/src/types/tafseer.enum.ts new file mode 100644 index 0000000..815f4da --- /dev/null +++ b/src/types/tafseer.enum.ts @@ -0,0 +1,30 @@ +export enum TafseerEnum { + TafsirFathulMajid = 'bn-tafisr-fathul-majid', + TafsirIbnKathirAbridged = 'en-tafisr-ibn-kathir', + TafsirIbnKathir = 'ar-tafsir-ibn-kathir', + TafseerIbnKathir = 'bn-tafseer-ibn-e-kaseer', + TafsirAhsanulBayaan = 'bn-tafsir-ahsanul-bayaan', + TafsirAbuBakrZakaria = 'bn-tafsir-abu-bakr-zakaria', + MaarifulQuran = 'en-tafsir-maarif-ul-quran', + TafseerAlSaddi = 'ru-tafseer-al-saddi', + TafseerAlSaddiArabic = 'ar-tafseer-al-saddi', + TafseerAlBaghawi = 'ar-tafsir-al-baghawi', + TafseerTanwirAlMiqbas = 'ar-tafseer-tanwir-al-miqbas', + TafsirAlWasit = 'ar-tafsir-al-wasit', + TafsirAlTabari = 'ar-tafsir-al-tabari', + TafsirMuyassar = 'ar-tafsir-muyassar', + TafseerAlQurtubi = 'ar-tafseer-al-qurtubi', + RebarKurdishTafsir = 'kurd-tafsir-rebar', + FiZilalAlQuran = 'ur-tafsir-fe-zalul-quran-syed-qatab', + TafsirIbnKaseerUrdu = 'ur-tafseer-ibn-e-kaseer', + TafsirBayanulQuran = 'ur-tafsir-bayan-ul-quran', + TazkirulQuran = 'ur-tazkirul-quran', + TazkirulQuranEnglish = 'en-tazkirul-quran', + KashfAlAsrarTafsir = 'en-kashf-al-asrar-tafsir', + AlQushairiTafsir = 'en-al-qushairi-tafsir', + KashaniTafsir = 'en-kashani-tafsir', + TafsirAlTustari = 'en-tafsir-al-tustari', + AsbabAlNuzulByAlWahidi = 'en-asbab-al-nuzul-by-al-wahidi', + TanwirAlMiqbas = 'en-tafsir-ibn-abbas', + AlJalalayn = 'en-al-jalalayn', +} diff --git a/src/types/translation.enum.ts b/src/types/translation.enum.ts new file mode 100644 index 0000000..98e68ef --- /dev/null +++ b/src/types/translation.enum.ts @@ -0,0 +1,21 @@ +export enum TranslationEnum { + Bengali = 'bn', + Chinese = 'zh', + English = 'en', + French = 'fr', + German = 'de', + Hindi = 'hi', + Japanese = 'ja', + Korean = 'ko', + Norwegian = 'no', + Pashto = 'ps', + Persian = 'fa', + Punjabi = 'pa', + Russian = 'ru', + Sindhi = 'sd', + Spanish = 'es', + Tamil = 'ta', + Thai = 'th', + Turkish = 'tr', + Urdu = 'ur', +} diff --git a/src/types/zikr.ts b/src/types/zikr.ts new file mode 100644 index 0000000..8a0673c --- /dev/null +++ b/src/types/zikr.ts @@ -0,0 +1,8 @@ +export interface Zikr { + id: number; + description: object; + count: string; + zikr: string; + reference: string; + category: string; +}