@progress/kendo-react-scheduler
Version:
React Scheduler brings the functionality of Outlook's Calendar to a single UI component. KendoReact Scheduler package
9 lines (8 loc) • 3.1 kB
JavaScript
/**
* @license
*-------------------------------------------------------------------------------------------
* Copyright © 2025 Progress Software Corporation. All rights reserved.
* Licensed under commercial license. See LICENSE.md in the package root for more information
*-------------------------------------------------------------------------------------------
*/
;Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../utils/index.js"),g=require("@progress/kendo-recurrence"),D=require("@progress/kendo-date-math"),r=e=>e.charAt(0).toUpperCase()+e.slice(1),c=["first","second","third","fourth","last"],d=["never","daily","weekly","monthly","yearly"],i=[{day:0,offset:0},{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0},{day:6,offset:0}],u=[{day:1,offset:0},{day:2,offset:0},{day:3,offset:0},{day:4,offset:0},{day:5,offset:0}],f=[{day:0,offset:0},{day:6,offset:0}],b=e=>{switch(e){case"day":return i;case"weekday":return u;case"weekend":return f}},m=e=>g.parseRule({recurrenceRule:e})||{},h=e=>d.map(t=>({value:t,text:e("Frequencies"+r(t))})),p=e=>s.isPresent(e)&&!s.isNullOrEmptyString(e.freq)?e.freq:"never",R=e=>s.isPresent(e.until)?D.toLocalDate(e.until):null,w=e=>e.dateFormatNames({type:"months",nameType:"wide",standAlone:!0}).map((t,n)=>({text:t,value:n+1})),W=e=>{const t=e.firstDay(),n=e.dateFormatNames({type:"days",nameType:"abbreviated"}).map((a,y)=>({text:a,value:y}));return n.slice(t).concat(n.slice(0,t))},v=(e,t,n)=>{var y;let a;if(s.isPresent(t.byWeekDay))switch(t.byWeekDay.length){case 7:a="day";break;case 5:a="weekday";break;case 2:a="weekend";break;case 1:a=t.byWeekDay[0].day;break;default:a=n.getDay();break}else a=n.getDay();return(y=e.find(o=>a===o.value))!=null?y:e[0]},F=(e,t)=>{const n=e.firstDay(),a=e.dateFormatNames({type:"days",nameType:"wide"}).map((l,k)=>({text:l,value:k})),y=a.slice(n).concat(a.slice(0,n));return[{text:t("WeekdaysDay"),value:"day"},{text:t("WeekdaysWeekday"),value:"weekday"},{text:t("WeekdaysWeekendday"),value:"weekend"}].concat(y)},O=(e,t)=>e.find(n=>n.value===(t.bySetPosition?t.bySetPosition[0]:t.byWeekDay&&t.byWeekDay[0]?t.byWeekDay[0].offset:1))||e[0],S=e=>{const t=[1,2,3,4,-1];return c.map((n,a)=>({text:e("OffsetPositions"+r(n)),value:t[a]}))},P=e=>s.isPresent(e.count)?"count":s.isPresent(e.until)?"until":"never",E=e=>{if(s.isPresent(e.byWeekDay))return"weekday";if(s.isPresent(e.byMonthDay))return"monthday"},M=(e,t)=>e.find(n=>(t.byMonth?t.byMonth[0]:null)===n.value)||e[0],x=(e,t)=>s.isPresent(e.byMonthDay)&&e.byMonthDay.length>0?e.byMonthDay[0]:t.getDate();exports.FREQUENCIES=d;exports.OFFSET_POSITIONS=c;exports.capitalize=r;exports.dayRule=i;exports.getEndRule=P;exports.getExtendedWeekDays=F;exports.getFrequencies=h;exports.getFrequency=p;exports.getMonth=M;exports.getMonthDay=x;exports.getMonths=w;exports.getOffset=O;exports.getOffsets=S;exports.getRepeatOnRule=E;exports.getRule=m;exports.getUntil=R;exports.getWeekDay=v;exports.getWeekDays=W;exports.weekDayRuleFromString=b;exports.weekdayRule=u;exports.weekendRule=f;