FullCalendar کی ریسورس ٹائم لائن اور ریسورس کالم Premium کا حصہ ہیں: کسی تجارتی ایپ کو خریدی ہوئی لائسنس کلید چاہیے۔ اس کا لائسنس کا صفحہ مفت استعمال کی صورتیں بتاتا ہے: وہ ایپس جو پوری کی پوری AGPL ہوں، اور رجسٹرڈ غیر منافع بخش ادارے۔ Needless UI شیڈولر میں یہ دونوں MIT لائسنس کے تحت ہیں، ساتھ میں بار بار ہونے والے ایونٹس اور iCalendar فائلیں بھی۔ یہ گائیڈ ایک Angular ایپ کو ایک سے دوسرے پر منتقل کرتی ہے: کیا ساتھ منتقل ہو جاتا ہے، کیا نہیں، اور کون سا ڈیٹا کنورٹ کرنا ہے۔

یہ گائیڈ FullCalendar 7 کے نام استعمال کرتی ہے، اور جہاں ورژن 6 کے نام مختلف ہیں وہاں وہ بریکٹس میں دیے گئے ہیں۔ FullCalendar کا Angular کنیکٹر Angular 16 سے 22 تک سپورٹ کرتا ہے؛ Needless UI کو Angular 22 چاہیے۔

آپ کو کیا ملتا ہے

FullCalendar اور Needless UI شیڈولر
فیچرFullCalendarNeedless UI
ریسورس ٹائم لائن: ہر کمرے یا شخص کی ایک قطارPremiumہاں: ایک دن، ایک ہفتہ یا ایک مہینہ
دن اور ہفتے کے منظر میں ریسورسز بطور کالمPremiumہاں
مہینے، ہفتے اور دن کے منظرمفتہاں
ڈریگ کر کے منتقل اور ری سائز کرنامفت؛ دوسرے ریسورس پر لے جانا Premium کے ساتھہاں، دوسرے ریسورسز پر بھی۔ اختتام سے ری سائز ہوتا ہے، آغاز سے نہیں۔
ایونٹ بنانے کے لیے وقت چننامفتہاں، پوائنٹر سے، دیر تک دبا کر یا کی بورڈ سے
اصول، جیسے ایونٹس کا ایک دوسرے پر نہ آنامفت: overlap اور constraint آپشنزہاں: ایک allow فنکشن، جس سے ہر تبدیلی سے پہلے پوچھا جاتا ہے
کی بورڈ سے ایونٹس منتقل اور ری سائز کرنااس کی رسائی کی دستاویزات میں نہیں، جو ARIA لیبلز اور Tab فوکس کی بات کرتی ہیںہاں، اسکرین ریڈرز کے لیے اعلان کے ساتھ
بار بار ہونے والے ایونٹسمفت، rrule پلگ اِن اور لائبریری کے ساتھبلٹ اِن: RFC 5545 کے اصول، مگر EXRULE، RDATE اور گھنٹہ وار اصولوں کے بغیر
iCalendar (.ics)مفت: فیڈ پڑھتا ہے.ics فائلیں پڑھتا اور لکھتا ہے
فہرست اور سال کے منظرمفتآنے والے دنوں کا ایجنڈا؛ سال کا کوئی منظر نہیں
ٹائم زونزمفت: مقامی، UTC یا نام والےنہیں: جو اوقات ملیں، وہی دکھاتا ہے
گروپ شدہ، اندرونی یا کئی کالموں والے ریسورسزPremiumنہیں: ایک کالم، جسے آپ کا ٹیمپلیٹ بناتا ہے
بیرونی ڈریگ اینڈ ڈراپ، بیک گراؤنڈ ایونٹسمفتنہیں
پرنٹنگ، ورچوئل رینڈرنگPremiumنہیں
فریم ورکسAngular 16 سے 22، React، Vue، سادہ JavaScript اور مزیدAngular 22 اور React 19

کون سی چیز کس کے برابر ہے

FullCalendar کے آپشنز اور Needless UI میں ان کے متبادل
FullCalendarNeedless UI شیڈولر
<full-calendar [options]>، plugins، schedulerLicenseKey<nui-scheduler>، ہر آپشن کے لیے ایک ان پٹ کے ساتھ؛ نہ پلگ اِنز، نہ کلید
initialView: 'resourceTimelineDay'view="timeline"، اور ہفتے یا مہینے کے لیے timelineSpan
initialView: 'timeGridWeek'view="week"؛ [(view)] دو طرفہ بائنڈنگ ہے
resources، events[resources]، [events]
resourceId، extendedPropsresource، data
editable، selectableeditable، selectable
select(slotSelect): { start, end, allDay, resource }
eventDrop، eventResize(eventChange): جب تک آپ events اپ ڈیٹ نہ کریں، کچھ منتقل نہیں ہوتا
eventClick(eventClick)
eventOverlap، selectOverlap، eventAllow[allow]: منتقلی، ری سائز اور انتخاب، سب کے لیے ایک ہی فنکشن
slotDuration، snapDurationslotMinutes، snapMinutes، منٹوں میں
slotMinTime، slotMaxTime، scrollTimedayStart، dayEnd، scrollHour، گھنٹوں میں
businessHours[businessHours]، ہفتے کے دن 1 (پیر) سے 7 تک
datesSet(rangeChange)
eventContent، resourceCellContent [resourceLabelContent]nuiSchedulerEvent اور nuiSchedulerResource ٹیمپلیٹس
locale، firstDaylocale (کوئی بھی BCP 47 ٹیگ)، 1 سے 7 تک firstDay، اور اس کے الفاظ کے لیے labels

کمروں کی بکنگ کی ٹائم لائن، دونوں طریقوں سے

کمرے ریسورسز ہیں اور بکنگز ایونٹس۔ لوگ کسی کمرے کی قطار پر ڈریگ کر کے اسے بک کرتے ہیں اور کسی بکنگ کو ڈریگ کر کے منتقل کرتے ہیں، اور ایک کمرے میں ایک وقت میں ایک ہی بکنگ ہو سکتی ہے۔ FullCalendar 7 اور اس کی Premium ریسورس ٹائم لائن کے ساتھ:

Needless UI شیڈولر کے ساتھ:

دو چیزیں مختلف طریقے سے کام کرتی ہیں۔ FullCalendar بکنگ کو خود منتقل کر دیتا ہے، اور ایپ اس تبدیلی کو اپنے ڈیٹا میں نقل کرتی ہے؛ Needless UI شیڈولر صرف تبدیلی کی اطلاع دیتا ہے، اور تبدیلی تبھی برقرار رہتی ہے جب آپ events اپ ڈیٹ کریں، اس لیے آپ کا ڈیٹا ہی واحد ماخذ رہتا ہے۔ اور allow سادہ کوڈ ہے، جس سے پوائنٹر یا کی بورڈ سے ہونے والی ہر تبدیلی سے پہلے پوچھا جاتا ہے، اس لیے یہ اصول آپ خود ٹیسٹ کر سکتے ہیں۔ بکنگ کیلنڈر کی گائیڈ یہی ایپ قدم بہ قدم بناتی ہے۔

ڈیٹا کنورٹ کرنا

FullCalendar کا ڈیٹا اور شیڈولر کو کیا چاہیے
FullCalendarNeedless UI
پورے دن کے ایونٹ کا end ایونٹ کے بعد والا دن ہوتا ہےپورے دن کے ایونٹ کا end اس کا آخری دن ہوتا ہے: ایک دن کم کریں
اوقات کے آخر میں Z یا کوئی آف سیٹ، جیسے +02:00، ہو سکتا ہےآف سیٹ کے بغیر گھڑی کے اوقات، جیسے 2026-11-02T09:30
ہفتے کے دن 0 (اتوار) سے 6 تک، businessHours اور firstDay میںہفتے کے دن 1 (پیر) سے 7 (اتوار) تک
دورانیے اسٹرنگز کی صورت میں، جیسے '00:30'اعداد: منٹ یا گھنٹے
ریسورسز پہلے id اور پھر عنوان کے لحاظ سے ترتیب پاتے ہیںریسورسز اسی ترتیب میں رہتے ہیں جس میں وہ ایرے میں ہوں
rrule بطور آبجیکٹ، اور exruleRFC 5545 اسٹرنگ، جیسے FREQ=WEEKLY;BYDAY=MO,FR، اور exdate
کوئی ٹائم زون، جیسے America/New_Yorkپہلے اوقات کنورٹ کریں۔ nuiSchedulerFromIcs(text, { timeZone }) .ics فائلیں پڑھتے ہوئے ہی انہیں کنورٹ کر دیتا ہے۔

اگر آپ کو وہ چاہیے جو ابھی موجود نہیں

اگر آپ کی ایپ ٹائم زونز، گروپ شدہ ریسورسز، بیرونی ڈریگ اینڈ ڈراپ یا پرنٹنگ پر انحصار کرتی ہے تو شیڈولر ابھی FullCalendar کی جگہ نہیں لے سکتا۔ جو آپ کو چاہیے، اس کے لیے ایشو کھولیں۔ باقی ہر چیز کے لیے شیڈولر کے صفحے پر ہر ان پٹ، آؤٹ پٹ اور مثال موجود ہے۔