QuranPagesScreen constructor
      const
      QuranPagesScreen({ 
    
    
- Key? key,
- PreferredSizeWidget? appBar,
- Color? ayahIconColor,
- Color? ayahSelectedBackgroundColor,
- Color? ayahSelectedFontColor,
- BannerStyle? bannerStyle,
- BasmalaStyle? basmalaStyle,
- Color? backgroundColor,
- List bookmarkList = const [],
- Color? bookmarksColor,
- Widget? circularProgressWidget,
- DownloadFontsDialogStyle? downloadFontsDialogStyle,
- bool isDark = false,
- String? juzName,
- String? languageCode = 'ar',
- void onAyahLongPress(- LongPressStartDetails details,
- AyahModel ayah
 
- dynamic onPageChanged(- int pageNumber
 
- VoidCallback? onPagePress,
- void onSurahBannerPress(- SurahNamesModel surah
 
- String? sajdaName,
- bool showAyahBookmarkedIcon = true,
- SurahInfoStyle? surahInfoStyle,
- SurahNameStyle? surahNameStyle,
- int? surahNumber,
- Color? textColor,
- List<Color?> ? singleAyahTextColors,
- Widget? topTitleChild,
- bool useDefaultAppBar = true,
- bool withPageView = true,
- bool? isFontsLocal = false,
- String? fontsName = '',
- List<int> ? ayahBookmarked = const [],
- Widget? anotherMenuChild,
- void anotherMenuChildOnTap(- AyahModel ayah
 
- Widget? secondMenuChild,
- void secondMenuChildOnTap(- AyahModel ayah
 
- AyahAudioStyle? ayahStyle,
- SurahAudioStyle? surahStyle,
- bool? isShowAudioSlider = true,
- String? appIconUrlForPlayAudioInBackground,
- QuranTopBarStyle? topBarStyle,
- int? page,
- int? startPage,
- int? endPage,
- bool enableMultiSelect = false,
- List<int> highlightedAyahs = const [],
- Map<int, List< highlightedAyahNumbersBySurah = const {},int> >
- List<({List< highlightedAyahNumbersInPages = const [],int> ayahs, int end, int start})>
- List<({int endAyah, int endSurah, int startAyah, int startSurah})> highlightedRanges = const [],
- List<String> highlightedRangesText = const [],
- required BuildContext parentContext,
Implementation
const QuranPagesScreen({
  super.key,
  // التخصيص العام
  this.appBar,
  this.ayahIconColor,
  this.ayahSelectedBackgroundColor,
  this.ayahSelectedFontColor,
  this.bannerStyle,
  this.basmalaStyle,
  this.backgroundColor,
  this.bookmarkList = const [],
  this.bookmarksColor,
  this.circularProgressWidget,
  this.downloadFontsDialogStyle,
  this.isDark = false,
  this.juzName,
  this.languageCode = 'ar',
  this.onAyahLongPress,
  this.onPageChanged,
  this.onPagePress,
  this.onSurahBannerPress,
  this.sajdaName,
  this.showAyahBookmarkedIcon = true,
  this.surahInfoStyle,
  this.surahNameStyle,
  this.surahNumber,
  this.textColor,
  this.singleAyahTextColors,
  this.topTitleChild,
  this.useDefaultAppBar = true,
  this.withPageView = true,
  this.isFontsLocal = false,
  this.fontsName = '',
  this.ayahBookmarked = const [],
  this.anotherMenuChild,
  this.anotherMenuChildOnTap,
  this.secondMenuChild,
  this.secondMenuChildOnTap,
  this.ayahStyle,
  this.surahStyle,
  this.isShowAudioSlider = true,
  this.appIconUrlForPlayAudioInBackground,
  this.topBarStyle,
  // تحديد الصفحات
  this.page,
  this.startPage,
  this.endPage,
  this.enableMultiSelect = false,
  this.highlightedAyahs = const [],
  this.highlightedAyahNumbersBySurah = const {},
  this.highlightedAyahNumbersInPages = const [],
  this.highlightedRanges = const [],
  this.highlightedRangesText = const [],
  required this.parentContext,
}) : assert(
        (page != null && startPage == null && endPage == null) ||
            (page == null && (startPage != null || endPage != null)),
        'حدد إما page لصفحة واحدة أو startPage/endPage لنطاق صفحات',
      );