QuranLibrary class
A class that provides utility functions for interacting with the Quran library.
This class includes methods and properties that facilitate various operations related to the Quran, such as retrieving verses, chapters, and other relevant information.
Example usage:
QuranLibrary quranLibrary = QuranLibrary();
// Use quranLibrary to access various Quran-related utilities.
Note: Ensure that you have the necessary dependencies and configurations set up in your Flutter project to use this class effectively.
Constructors
- QuranLibrary.new()
-
Factory constructor for creating a new instance of QuranLibrary.
factory
Properties
-
allBookmarks
→ List<
BookmarkModel> -
يعيد قائمة بجميع شارات المرجعية المحفوظة allBookmarks.
no setter
- cairoStyle → TextStyle
-
cairoStyle هو النمط الافتراضي للنصوص الآخرى.
final
- currentAndLastSurahNumber → int
-
يحصل على رقم السورة الحالية والأخيرة التي تم تشغيلها في مشغل الصوت.
هذا المعرف مفيد لمعرفة السورة التي يتم تشغيلها حالياً أو آخر سورة تم تشغيلها.
يمكن استخدام هذا الرقم للتنقل أو لعرض معلومات السورة في واجهة المستخدم.
no setter
- currentFontsSelected → int
-
لمعرفة الخط الذي تم تحديده، ما عليك سوى إستدعاء currentFontsSelected
no setter
- currentPageNumber → int
-
currentPageNumber تعيد رقم الصفحة التي يكون المستخدم عليها حاليًا.
أرقام الصفحات تبدأ من 1، لذا فإن الصفحة الأولى من القرآن هي الصفحة رقم 1.
no setter
- fontsDownloadProgress → double
-
للحصول على تقدم تنزيل الخطوط، ما عليك سوى إستدعاء fontsDownloadProgress
no setter
- formatLastPositionToDuration → Duration
-
يحول الموضع الأخير للتشغيل الصوتي إلى كائن Duration للاستخدام في العمليات البرمجية.
هذا مفيد عندما تحتاج لإجراء عمليات حسابية على الوقت أو للتحكم في مشغل الصوت برمجياً.
يمكن استخدام كائن Duration في العديد من عمليات Flutter الزمنية.
no setter
- formatLastPositionToTime → String
-
يحول الموضع الأخير للتشغيل الصوتي إلى نص منسق للوقت (مثل "05:23" أو "1:30:45").
هذا مفيد لعرض الموضع الأخير للمستخدم بطريقة سهلة القراءة في واجهة المستخدم.
يتم تنسيق الوقت تلقائياً ليظهر بصيغة مناسبة (دقائق:ثوان أو ساعات:دقائق:ثوان).
no setter
- hafsStyle → TextStyle
-
hafsStyle هو النمط الافتراضي للقرآن، مما يضمن عرض جميع الأحرف الخاصة بشكل صحيح.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- isFontsDownloaded → bool
-
لمعرفة ما إذا كانت الخطوط محملة او لا، ما عليك سوى إستدعاء isFontsDownloaded
no setter
- isPreparingDownloadFonts → bool
-
لمعرفة ما إذا كانت الخطوط قيد التحميل، ما عليك سوى إستدعاء isPreparingDownloadFonts
no setter
- isTafsir → bool
-
التحقق إذا كان الوضع الحالي هو التفسير أو الترجمة.
Check if the current mode is tafsir or translation.
no setter
- isTtranslation → bool
-
no setter
- naskhStyle → TextStyle
-
naskhStyle هو النمط الافتراضي للنصوص الآخرى.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- selectedTafsirIndex → int
-
الحصول على رقم التفسير المختار حالياً.
Get the currently selected tafsir index.
no setter
- setFontsSelected ← int
-
لتحديد نوع الخط الذي تريد إستخدامه، ما عليك سوى إعطاء قيمة setFontsSelected
no getter
-
tafsirAndTraslationsCollection
→ List<
TafsirNameModel> -
الحصول على قائمة أسماء التفاسير والترجمات.
Get the list of tafsir and translation names.
no setter
-
tafsirList
→ List<
TafsirTableData> -
الحصول على قائمة بيانات التفاسير المتوفرة.
Get the list of available tafsir data.
no setter
-
translationList
→ List<
TranslationModel> -
الحصول على قائمة الترجمات المتوفرة.
Get the list of available translations.
no setter
-
usedBookmarks
→ List<
BookmarkModel> -
يعيد قائمة بجميع العلامات المرجعية التي استخدمها وقام بتعيينها المستخدم في صفحات القرآن usedBookmarks.
no setter
Methods
-
cancelDownloadSurah(
) → void - يلغي عملية تحميل الملفات الصوتية الجارية حالياً. هذه الدالة مفيدة عندما يريد المستخدم إيقاف التحميل لتوفير البيانات أو تحرير مساحة التخزين. يمكن استخدامها لإلغاء تحميل أي سورة قيد التحميل حالياً.
-
changeTafsirPopupMenu(
TafsirStyle tafsirStyle, {int? pageNumber, bool? isDark}) → Widget - إظهار قائمة منبثقة لتغيير نوع التفسير. Show a popup menu to change the tafsir style.
-
changeTafsirSwitch(
int index, {int? pageNumber}) → void - تغيير التفسير المختار عند الضغط على زر التبديل. Change the selected tafsir when the switch button is pressed.
-
clearCache(
[String? key]) → void - مسح ذاكرة التخزين المؤقت لمفتاح معين أو ذاكرة التخزين المؤقت بالكامل Clear cache for specific key or entire cache
-
fetchTafsir(
{required int pageNumber}) → Future< void> - جلب التفسير الخاص بصفحة معينة من خلال رقم الصفحة. Fetch tafsir for a specific page by its page number.
-
fetchTranslation(
) → Future< void> - جلب الترجمات من المصدر. Fetch translations from the source.
-
getAllSurahInPageByPageNumber(
{required int pageNumber}) → List< SurahModel> - لمعرفة أسماء السور في اي صفحة فقط قم بإستدعاء getAllSurahInPageByPageNumber وفقط قم بتمرير رقم الصفحة لها.
-
getAllSurahsArtPath(
{Color? color}) → List< Widget> - getAllSurahsArtPath يعيد قائمة ويدجيت المخطوطات الخاصة بإسماء السور.
-
getCurrentSurahDataByAyah(
{required AyahModel ayah}) → SurahModel - لجلب بيانات السورة الحالية عن طريق بيانات الآية يمكنك إستخدام getCurrentSurahDataByAyah.
-
getCurrentSurahDataByAyahUniqueNumber(
{required int ayahUniqueNumber}) → SurahModel - لجلب بيانات السورة الحالية عن طريق رقم الآية الفريد يمكنك إستخدام getCurrentSurahDataByAyahUniqueNumber.
-
getCurrentSurahDataByPageNumber(
{required int pageNumber}) → SurahModel - لجلب بيانات السورة الحالية عن طريق رقم الصفحة يمكنك إستخدام getCurrentSurahDataByPageNumber.
-
getDeleteFontsMethod(
) → Future< void> -
لحذف الخطوط فقط قم بإستدعاء
deleteFontsMethod
-
getFontsDownloadDialog(
DownloadFontsDialogStyle? downloadFontsDialogStyle, String? languageCode, {bool isDark = false}) → Widget - للحصول على نافذة حوار خاصة بتحميل الخطوط، قم فقط باستدعاء: getFontsDownloadDialog.
-
getFontsDownloadMethod(
{required int fontIndex}) → Future< void> -
للحصول على طريقة تنزيل الخطوط فقط قم بإستدعاء
fontsDownloadMethod
-
getFontsDownloadWidget(
BuildContext context, {DownloadFontsDialogStyle? downloadFontsDialogStyle, String? languageCode, bool isDark = false, bool isFontsLocal = false}) → Widget - للحصول على الويدجت الخاصة بتنزيل الخطوط فقط قم بإستدعاء getFontsDownloadWidget
-
getFontsPrepareMethod(
{required int pageIndex, bool isFontsLocal = false}) → Future< void> -
للحصول على طريقة تنزيل الخطوط فقط قم بإستدعاء getFontsPrepareMethod
مطلوب تمرير رقم الصفحة
pageIndex
-
getJuzByPageNumber(
{required int pageNumber}) → AyahModel - لجلب رقم الجزء الحالي عن طريق رقم الصفحة يمكنك إستخدام getJuzByPageNumber.
-
getPageAyahsByPageNumber(
{required int pageNumber}) → List< AyahModel> - لجلب آيات الصفحة عن طريق رقم الصفحة يمكنك إستخدام getPageAyahsByPageNumber.
-
getSurahArtPath(
{required int index, Color? color}) → Widget - getSurahArtPath يعيد ويدجيت المخطوطة الخاصة بإسم السور.
-
getSurahInfo(
{required int surahNumber}) → SurahNamesModel - getSurahInfo تتيح لك الحصول على سورة مع جميع بياناتها. ملاحظة: تستقبل هذه الطريقة رقم السورة وليس فهرس السورة.
-
getSurahInfoBottomSheet(
{required int surahNumber, required BuildContext context, SurahInfoStyle? surahInfoStyle, String? languageCode, bool isDark = false}) → void - للحصول على معلومات السورة في نافذة حوار، قم فقط باستدعاء: getSurahInfoBottomSheet.
-
getTafsirDownloaded(
int index) → bool - التحقق إذا كان التفسير تم تحميله مسبقاً. Check if the tafsir is already downloaded.
-
getTafsirOfAyah(
{required int ayahUniqNumber, String? databaseName}) → Future< List< TafsirTableData> > - للحصول على التفسير الخاص بالآية، فقط قم بتمرير رقم الآية لـ getTafsirOfAyah.
-
getTafsirOfPage(
{required int pageNumber, String? databaseName}) → Future< List< TafsirTableData> > - للحصول على التفسير الخاص بايآت الصفحة، فقط قم بتمرير رقم الصفحة لـ getTafsirOfPage.
-
jumpToAyah(
int pageNumber, int ayahUQNumber) → void -
navigateToAyah
يتيح لك التنقل إلى أي آية. من الأفضل استدعاء هذه الطريقة أثناء عرض شاشة القرآن، وإذا تم استدعاؤها ولم تكن شاشة القرآن معروضة، فسيتم بدء العرض من صفحة هذه الآية عند فتح شاشة القرآن في المرة التالية. -
jumpToBookmark(
BookmarkModel bookmark) → void - jumpToBookmark يتيح لك التنقل إلى علامة مرجعية معينة. ملاحظة: يجب أن يكون رقم صفحة العلامة المرجعية بين 1 و604.
-
jumpToHizb(
int hizb) → void - jumpToHizb يتيح لك التنقل إلى أي جزء في القرآن باستخدام رقم الجزء. ملاحظة: تستقبل هذه الطريقة رقم الجزء وليس فهرس الجزء.
-
jumpToJoz(
int jozz) → void - jumpToJoz let's you navigate to any quran jozz with jozz number Note it receives jozz number not jozz index
-
jumpToPage(
int page) → void - jumpToPage يتيح لك التنقل إلى أي صفحة في القرآن باستخدام رقم الصفحة. ملاحظة: تستقبل هذه الطريقة رقم الصفحة وليس فهرس الصفحة. من الأفضل استدعاء هذه الطريقة أثناء عرض شاشة القرآن، وإذا تم استدعاؤها ولم تكن شاشة القرآن معروضة، فسيتم بدء العرض من هذه الصفحة عند فتح شاشة القرآن في المرة التالية.
-
jumpToSurah(
int surah) → void - jumpToSurah يتيح لك التنقل إلى أي سورة في القرآن باستخدام رقم السورة. ملاحظة: تستقبل هذه الطريقة رقم السورة وليس فهرس السورة.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
playAyah(
{required BuildContext context, required int currentAyahUniqueNumber, required bool playSingleAyah}) → Future< void> - يقوم بتشغيل آية أو مجموعة من الآيات الصوتية بدءًا من الآية المحددة. يمكن تشغيل آية واحدة فقط أو الاستمرار في تشغيل الآيات التالية.
-
playLastPosition(
) → Future< void> - يتابع التشغيل الصوتي من الموضع الأخير الذي توقف عنده المستخدم. هذه الدالة مفيدة جداً لتوفير تجربة مستخدم سلسة حيث يمكن للمستخدم الاستمرار من حيث توقف. تقوم بتحميل المصدر الصوتي الأخير وبدء التشغيل من الموضع المحفوظ تلقائياً.
-
playSurah(
{required int surahNumber}) → Future< void> - يقوم بتشغيل سورة كاملة صوتياً بدءًا من الآية الأولى حتى الآية الأخيرة في السورة. يمكن استخدام هذه الدالة لتشغيل أي سورة من القرآن الكريم بالكامل.
-
removeBookmark(
{required int bookmarkId}) → void -
يزيل علامة مرجعية من قائمة العلامات المرجعية المحفوظة للمستخدم.
bookmarkId
هو معرّف العلامة المرجعية التي سيتم إزالتها. -
search(
String text) → List< AyahModel> - search يبحث في القرآن عن الآيات من خلال الكلمة أو رقم الصفحة. يعيد قائمة بجميع الآيات التي تحتوي نصوصها على النص المُعطى.
-
seekNextAyah(
{required BuildContext context, required int currentAyahUniqueNumber}) → Future< void> - ينتقل إلى الآية التالية وبدء تشغيلها صوتياً. يتم استخدام هذه الدالة للتنقل السريع للآية التالية أثناء التشغيل الصوتي.
-
seekPreviousAyah(
{required BuildContext context, required int currentAyahUniqueNumber}) → Future< void> - ينتقل إلى الآية السابقة وبدء تشغيلها صوتياً. يتم استخدام هذه الدالة للتنقل السريع للآية السابقة أثناء التشغيل الصوتي.
-
seekToNextSurah(
) → Future< void> - ينتقل إلى السورة التالية وبدء تشغيلها صوتياً بالكامل. يتم استخدام هذه الدالة للانتقال السريع للسورة التالية أثناء التشغيل الصوتي. إذا كانت السورة الحالية هي الأخيرة (سورة الناس)، فسيتم العودة إلى السورة الأولى (الفاتحة).
-
seekToPreviousSurah(
) → Future< void> - ينتقل إلى السورة السابقة وبدء تشغيلها صوتياً بالكامل. يتم استخدام هذه الدالة للانتقال السريع للسورة السابقة أثناء التشغيل الصوتي. إذا كانت السورة الحالية هي الأولى (الفاتحة)، فسيتم الانتقال إلى السورة الأخيرة (الناس).
-
setBookmark(
{required String surahName, required int ayahNumber, required int ayahId, required int page, required int bookmarkId}) → void -
يقوم بتعيين علامة مرجعية باستخدام
ayahId
وpage
وbookmarkId
المحددة. -
showTafsir(
{required BuildContext context, required int ayahNum, required int pageIndex, required String ayahTextN, required int ayahUQNum, required int ayahNumber, TafsirStyle? tafsirStyle}) → Future< void> - لعرض التفسير، يمكنك استخدام showTafsir.
-
startDownloadSurah(
{required int surahNumber}) → Future< void> - يبدأ تحميل ملفات الصوت الخاصة بسورة معينة لتكون متاحة للتشغيل دون الحاجة للاتصال بالإنترنت. هذه الدالة مفيدة لتحميل السور مسبقاً وتخزينها محلياً لتحسين الأداء وتوفير البيانات.
-
surahSearch(
String text) → List< SurahModel> - search يبحث في القرآن عن أسماء السور. يعيد قائمة بجميع السور التي يكون أسمها أو رقمها أو رفم الصفحة الخاصة بها مطابق للنص المُعطى.
-
switchFontType(
{required int fontIndex}) → Future< void> - لتبديل نوع الخط مع تحميله إذا لم يكن محملاً من قبل هذه الدالة تلقائيًا ستقوم بتحميل الخط إذا كان غير متوفر ثم تعيينه
-
tafsirDownload(
int i) → Future< void> - تحميل التفسير المحدد حسب الفهرس. Download the tafsir by the given index.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
Static Methods
-
getAllSurahs(
{bool isArabic = true}) → List< String> - getAllSurahs يعيد قائمة بأسماء السور.
-
init(
{Map< int, List< ? userBookmarks, bool overwriteBookmarks = false}) → Future<BookmarkModel> >void> - init تقوم بتهيئة القرآن ويجب استدعاؤها قبل البدء في استخدام الحزمة