Files
modstagram-next/src/constants/reelsFeed.ts
payacom f364f989ed pay
2026-10-06 17:07:08 +03:30

34 lines
2.3 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/** تعداد پست در اولین درخواست — سریع‌تر باز شدن ریلز */
export const REELS_FIRST_PAGE_SIZE = 3;
/** تعداد پست در صفحات بعدی (پس‌زمینه) */
export const REELS_PAGE_SIZE = 6;
/** فقط کارت‌های نزدیک پست فعال mount می‌شوند */
export const REELS_RENDER_WINDOW = 5;
/** فضای رزروشده‌ی پایینِ هر اسلات برای نوارِ ناوبریِ شناورِ پایینِ صفحه (TabNavigation.tsx)
* که برخلافِ اندروید (که تبِ پایین رو کاملاً مخفی می‌کنه)، توی ریلزِ وب همیشه روی صفحه
* می‌مونه — پس برخلافِ نسخه‌ی اول (نسبتِ ۹:۱۶ کاملِ letterbox که فضای خالیِ خیلی زیادی
* می‌ذاشت)، اینجا فقط دقیقاً به‌اندازه‌ی ارتفاعِ خودِ همون نوار + safe-area رزرو می‌شه،
* نه یه نسبتِ ابعادِ ثابت — تا پست مثلِ ریلزِ اندروید تقریباً تمام‌صفحه (edge-to-edge)
* بمونه و فقط از زیرِ نوار بیرون نزنه */
// مثل اندروید: فاصله‌ی ثابت ۵۰px از پایینِ صفحه، بدون وابستگی به safe-area،
// تا کادرِ ریلز و خطِ پیشرفت روی همه‌ی گوشی‌ها یک شکل باشن
export const REELS_BOTTOM_RESERVED = "50px";
/** کلاس یکسان هر اسلات ریلز — snap + ارتفاع ثابت. خودِ اسلات کامل‌ارتفاعه (برای
* فاصله‌گذاریِ درستِ scroll-snap)؛ محتوای واقعی (ReelsPostCard) با REELS_BOTTOM_RESERVED
* کوتاه‌تر می‌شه و از بالا (زیرِ status bar) شروع می‌شه، نه وسط‌چین */
export const REELS_SLOT_CLASS =
"reels-snap-slot flex h-[100dvh] w-full shrink-0 snap-start snap-always items-start justify-center bg-black";
/** پوسته ریلز — هم‌عرض منوبار */
export const REELS_SHELL_CLASS = "mx-auto h-[100dvh] w-full max-w-xl overflow-hidden";
/** چند پست مانده به انتها، صفحه بعد prefetch شود */
export const REELS_PREFETCH_AHEAD = 3;
/** تأخیر قبل از fetch صفحه دوم در پس‌زمینه */
export const REELS_BG_PREFETCH_DELAY_MS = 350;