UNPKG

@fowusu/calendar-kit

Version:

A simple JS only calendar UI for react native

2 lines (1 loc) 17.8 kB
"use strict";var Le=Object.create;var st=Object.defineProperty,Re=Object.defineProperties,Oe=Object.getOwnPropertyDescriptor,Te=Object.getOwnPropertyDescriptors,Fe=Object.getOwnPropertyNames,Dt=Object.getOwnPropertySymbols,Ne=Object.getPrototypeOf,Vt=Object.prototype.hasOwnProperty,re=Object.prototype.propertyIsEnumerable;var oe=(t,e,n)=>e in t?st(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,d=(t,e)=>{for(var n in e||(e={}))Vt.call(e,n)&&oe(t,n,e[n]);if(Dt)for(var n of Dt(e))re.call(e,n)&&oe(t,n,e[n]);return t},k=(t,e)=>Re(t,Te(e));var A=(t,e)=>{var n={};for(var o in t)Vt.call(t,o)&&e.indexOf(o)<0&&(n[o]=t[o]);if(t!=null&&Dt)for(var o of Dt(t))e.indexOf(o)<0&&re.call(t,o)&&(n[o]=t[o]);return n};var Pe=(t,e)=>{for(var n in e)st(t,n,{get:e[n],enumerable:!0})},ae=(t,e,n,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Fe(e))!Vt.call(t,r)&&r!==n&&st(t,r,{get:()=>e[r],enumerable:!(o=Oe(e,r))||o.enumerable});return t};var ut=(t,e,n)=>(n=t!=null?Le(Ne(t)):{},ae(e||!t||!t.__esModule?st(n,"default",{value:t,enumerable:!0}):n,t)),ve=t=>ae(st({},"__esModule",{value:!0}),t);var $e={};Pe($e,{Calendar:()=>ht,CalendarList:()=>qt,dateStringToDate:()=>i,getDatesInRange:()=>Pt,getDayState:()=>St,toLocaleDateString:()=>P,useRenderCount:()=>Ce});module.exports=ve($e);var nt=ut(require("react")),Q=require("react-native");var R=t=>!isNaN(t.valueOf());var i=t=>{let e=new Date(`${t}T12:00:00`);if(!R(e))throw new Error("Invalid date");return e};var wt=(t,e)=>new Date(t,e,0).getDate();var Lt=(t,e)=>{let n=i(t),o=n.getDate();n.setMonth(n.getMonth()+Math.abs(e));let r=wt(n.getFullYear(),n.getMonth()+1),a=Math.min(o,r);return n.setDate(a),n};var P=t=>`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`;var Rt=({start:t,end:e})=>{if(!R(t)||!R(e))throw new Error("Invalid start or end date");if(t>e)throw new Error("Invalid date range");let n=[],o=new Date(t);o.setDate(1),o.setHours(0,0,0,0);let r=new Date(e);for(r.setDate(1),r.setHours(0,0,0,0);o<=r;){n.push(P(o));let a=o.getMonth();o.setMonth(a+1)}return n};var Ot=(t,e)=>{let n=i(t),o=n.getDate();n.setMonth(n.getMonth()-Math.abs(e));let r=wt(n.getFullYear(),n.getMonth()+1),a=Math.min(o,r);return n.setDate(a),n};var Tt=({startMonth:t,pastMonthsCount:e=0,futureMonthsCount:n=12})=>{let o=t!=null?t:P(new Date),r=Ot(o,e),a=Lt(o,n);return Rt({start:r,end:a})};var U=t=>{if(!R(t))throw new Error("Invalid date");let e=t.getMonth()+1,n=t.getFullYear();return new Date(n,e,0,23,59,59)};var X=(t,{weekStartsOn:e=0})=>{let n=new Date(t),o=(n.getDay()+7-e)%7;return n.setDate(n.getDate()-o),n.setHours(0,0,0,0),n};var xt=(t,{weekStartsOn:e=0})=>{let n=X(t,{weekStartsOn:e});return n.setDate(n.getDate()+6),n.setHours(23,59,59,999),n};var q=t=>{if(!R(t))throw new Error("Invalid date");let e=t.getFullYear(),n=t.getMonth();return new Date(e,n,1,0,0,0)},it=t=>t.replace(/.{2}$/,"01");var Ee=t=>({start:q(t),end:U(t)}),Ft=(t,e=0)=>{let{start:n,end:o}=Ee(t);return It(n,o,e)},It=(t,e,n=0)=>{let o=[],r=X(t,{weekStartsOn:n}),a=xt(e,{weekStartsOn:n});for(;r<=a;){let m=[];for(let s=0;s<7&&!(r>a);s++)m.push(P(r)),r.setDate(r.getDate()+1);o.push(m)}return o};var Nt=({start:t,end:e})=>{if(!R(t)||!R(e))throw new Error("Invalid start or end date");if(t>e)throw new Error("Invalid date range");let n=[],o=new Date(t);o.setHours(0,0,0,0);let r=new Date(e);for(r.setHours(23,59,59,999);o<=r;){n.push(new Date(o));let a=o.getDate();o.setDate(a+1)}return n};var mt=(t,e="en-US")=>t.toLocaleDateString(e,{month:"long",year:"numeric"});var Pt=(t,e)=>Nt({start:i(t),end:i(e)}).map(P);var vt=(t,e=0)=>{let n=i(t),o=U(n),r=(n.getDay()-e+7)%7,a=o.getDate(),m=7-r,s=a-m;return Math.ceil(s/7)+1};var Et=(t,e)=>{let n=i(t);return n.getMonth()===e.getMonth()&&n.getFullYear()===e.getFullYear()};var At=(t,e)=>{let n=i(t),o=i(e);return n>=o};var Ht=(t,e)=>{let n=i(t),o=i(e);return n<=o};var Yt=t=>{let e=i(t),n=new Date;return e.getFullYear()===n.getFullYear()&&e.getMonth()===n.getMonth()&&e.getDate()===n.getDate()};var de=require("react"),Wt=require("react-native");var lt=ut(require("react")),Mt=require("react-native");var St=({month:t,showExtraDays:e,dateString:n,minDate:o,maxDate:r,markedDates:a,isLastWeekOfList:m})=>{let s=Et(n,t),c=o?At(n,o):!0,D=r?Ht(n,r):!0,y=(!m||s)&&D&&c,W=!!(s||e),u=s&&Yt(n),l=a.includes(n);return{state:y?"active":"inactive",isVisible:W,isSelected:l,isToday:u}};var ce=ut(require("react")),j=require("react-native");function G(t,e){if(t===e)return!0;if(typeof t!=typeof e||t===null||e===null)return!1;if(Array.isArray(t)&&Array.isArray(e))return t.length!==e.length?!1:t.every((n,o)=>G(n,e[o]));if(typeof t=="object"){let n=Object.keys(t),o=Object.keys(e);return n.length!==o.length?!1:n.every(r=>G(t[r],e[r]))}return!1}var ie=require("react"),J=require("react-native"),Z=require("react/jsx-runtime"),me=({day:t,locale:e="en-US",state:n,isToday:o,isSelected:r})=>{let a=(0,ie.useMemo)(()=>n!=="inactive"&&r?{textStyle:Ct.selected,containerStyle:se.selected}:o?{textStyle:Ct.today}:{},[n,r,o]);return(0,Z.jsx)(Z.Fragment,{children:(0,Z.jsx)(J.View,{style:[se.defaultContainer,a.containerStyle],children:(0,Z.jsx)(J.Text,{style:[Ct.defaultDayText,Ct[n],a.textStyle],children:t.toLocaleDateString(e,{day:"numeric"})})})})},se=J.StyleSheet.create({defaultContainer:{alignContent:"center",justifyContent:"center",paddingVertical:12},selected:{backgroundColor:"#b1b5ff"}}),Ct=J.StyleSheet.create({defaultDayText:{textAlign:"center",fontSize:16},selected:{color:"#fff",fontWeight:"normal"},active:{color:"#5a5a5a"},inactive:{color:"#cacaca"},today:{color:"#787de7",fontWeight:"bold"}});var kt=require("react/jsx-runtime"),Ae=({dateString:t,DayComponent:e=me,onPress:n,viewState:o,locale:r,dayContainerStyle:a})=>o.isVisible?(0,kt.jsx)(j.Pressable,{disabled:o.state==="inactive",onPress:()=>n==null?void 0:n(t),style:[le.dayContainer,a],children:(0,kt.jsx)(e,k(d({},o),{day:i(t),locale:r}))}):(0,kt.jsx)(j.View,{style:le.dayContainer}),le=j.StyleSheet.create({dayContainer:{width:"14.28%"},dayText:{textAlign:"center"}}),fe=ce.default.memo(Ae,(t,e)=>G(t.DayComponent,e.DayComponent)&&G(t.viewState,e.viewState)&&G(t.locale,e.locale)&&G(t.dateString,e.dateString));var Bt=require("react/jsx-runtime"),ct=lt.default.memo(({weekDays:t,month:e,locale:n,DayComponent:o,onDayPress:r,showExtraDays:a=!0,minDate:m,maxDate:s,customStateCreator:c,markedDates:D=[],weekContainerStyle:y,isLastWeekOfList:W})=>{let u=(0,lt.useMemo)(()=>t.map(F=>{let b={month:e,markedDates:D,dateString:F,showExtraDays:a,minDate:m,maxDate:s,isLastWeekOfList:W},S=St(b),p=c==null?void 0:c(b,S);return d(d({},S),p)}),[t,e,D,a,m,s,c,W]),l=(0,lt.useMemo)(()=>t.map((F,b)=>(0,Bt.jsx)(fe,{viewState:u[b],onPress:r,DayComponent:o,dateString:F,locale:n},F)),[t,u,r,o,n]);return(0,Bt.jsx)(Mt.View,{style:[He.weekContainer,y],children:l})});ct.displayName="Week";var He=Mt.StyleSheet.create({weekContainer:{flexDirection:"row"}});var ye=require("react/jsx-runtime"),ge=require("react"),pe=m=>{var s=m,{firstDayOfWeek:t,month:e,date:n,weeksContainerStyle:o,locale:r}=s,a=A(s,["firstDayOfWeek","month","date","weeksContainerStyle","locale"]);let c=(0,de.useMemo)(()=>Ft(e,t),[e,t]);return(0,ye.jsx)(Wt.View,{style:[Ye.weeksContainer,o],children:c.map((D,y)=>(0,ge.createElement)(ct,k(d({},a),{locale:r,key:`${n}-week-${y}`,weekDays:D,month:e,isLastWeekOfList:!0})))})},Ye=Wt.StyleSheet.create({weeksContainer:{gap:8}});var M=require("react"),et=require("react-native"),ue=require("@shopify/flash-list");var he=require("react-native"),{width:ft,height:De}=he.Dimensions.get("window");var tt={waitForInteraction:!0,minimumViewTime:100,viewAreaCoveragePercentThreshold:75};var _t=require("react/jsx-runtime"),we=require("react"),Be=et.Platform.select({web:!0,default:!1}),dt=(0,M.forwardRef)((b,F)=>{var S=b,{months:t,firstDayOfWeek:e=0,MonthNameComponent:n,locale:o,weekContainerStyle:r,currentDate:a,onScroll:m,showScrollIndicator:s=!1,decelerationRate:c="fast",onListEndReached:D,onEndReachedThreshold:y,showDayNames:W,calendarListContentContainerStyle:u}=S,l=A(S,["months","firstDayOfWeek","MonthNameComponent","locale","weekContainerStyle","currentDate","onScroll","showScrollIndicator","decelerationRate","onListEndReached","onEndReachedThreshold","showDayNames","calendarListContentContainerStyle"]);let[p,T]=(0,M.useState)(ft),C=(0,M.useRef)(null),h=(0,M.useMemo)(()=>{let f=U(i(t[t.length-1])),x=i(t[0]);return It(x,f,e).map(I=>({month:q(i(I[0])),week:I}))},[t,e]),Y=(0,M.useRef)(a),$=(0,M.useMemo)(()=>{if(Y.current){let f=h.findIndex(({week:x})=>x.includes(Y.current));return f>=0?f:0}return 0},[h]),rt={scrollSnapAlign:"center",width:Be?"100vw":p},z=({item:{month:f,week:x},index:I})=>(0,we.createElement)(ct,k(d({},l),{month:f,key:`${f}-week-${I}`,weekDays:x,isLastWeekOfList:I===h.length-1,weekContainerStyle:d(d({},r),rt)})),w=({nativeEvent:{layout:f}})=>{T(f.width)};(0,M.useImperativeHandle)(F,()=>({scrollToItem(f,x=!0){var N;let I=h.find(({week:bt})=>bt.includes(f));I&&((N=C.current)==null||N.scrollToItem({animated:x,item:I}))}}));let V=(0,M.useCallback)(({viewableItems:f})=>{let x=f.filter(I=>I.isViewable).map(({item:I})=>I);x&&x.length>0&&(m==null||m(x))},[m]);return et.I18nManager.isRTL?(0,_t.jsx)(et.FlatList,{ref:C,data:h,renderItem:z,horizontal:!0,pagingEnabled:!0,showsHorizontalScrollIndicator:!1,onViewableItemsChanged:V,initialScrollIndex:$,getItemLayout:(f,x)=>({length:p,offset:p*x,index:x}),onLayout:w,initialNumToRender:1,maxToRenderPerBatch:1,contentContainerStyle:u,decelerationRate:c,extraData:l,viewabilityConfig:tt}):(0,_t.jsx)(ue.FlashList,{ref:C,onViewableItemsChanged:V,onLayout:w,horizontal:!0,data:h,renderItem:z,pagingEnabled:!0,snapToInterval:p,estimatedItemSize:p,initialScrollIndex:$,onEndReachedThreshold:y,onEndReached:D,showsHorizontalScrollIndicator:s,decelerationRate:c,extraData:l,contentContainerStyle:u,viewabilityConfig:tt})});dt.displayName="ListWeeklyScrollContainer";var yt=require("react"),K=require("react-native");var xe=(t,e="short")=>{let n=[];for(let o=0;o<7;o++){let a=new Date(2024,0,o).toLocaleDateString(t,{weekday:e});n.push(a)}return n};var pt=require("react/jsx-runtime"),_e=40,gt=(0,yt.memo)(({firstDayOfWeek:t=0,weekdaysShort:e,WeekDayNameComponent:n,locale:o="en-US",weekdaysFormat:r="short"})=>{let a=(0,yt.useMemo)(()=>e||xe(o,r),[e,o,r]),m=(0,yt.useMemo)(()=>{let s=a.slice(0,t);return[...a.slice(t),...s]},[t,a]);return n?(0,pt.jsx)(n,{weekDays:m}):(0,pt.jsx)(K.View,{style:$t.daysContainer,children:m.map((s,c)=>(0,pt.jsx)(K.View,{style:$t.day,children:(0,pt.jsx)(K.Text,{style:$t.dayText,children:s})},s+c))})});gt.displayName="WeekDayName";var $t=K.StyleSheet.create({daysContainer:{flexDirection:"row",justifyContent:"space-between",alignItems:"center",height:_e,gap:2,zIndex:2},day:{height:"100%",justifyContent:"center",alignItems:"center",flex:1},dayText:{textAlign:"center",color:"#c3c3c3",fontWeight:"500",fontSize:16}});var v=require("react/jsx-runtime"),ht=nt.default.memo(F=>{var b=F,{date:t,firstDayOfWeek:e=0,weekdaysShort:n,MonthNameComponent:o,showDayNames:r=!0,contentContainerStyle:a,WeekDayNameComponent:m,locale:s,showMonthName:c=!0,weekdaysFormat:D,viewAs:y="month",MonthAnimatedTransitionComponent:W=nt.default.Fragment,WeekAnimatedTransitionComponent:u=nt.default.Fragment}=b,l=A(b,["date","firstDayOfWeek","weekdaysShort","MonthNameComponent","showDayNames","contentContainerStyle","WeekDayNameComponent","locale","showMonthName","weekdaysFormat","viewAs","MonthAnimatedTransitionComponent","WeekAnimatedTransitionComponent"]);var T,C;let S=(0,nt.useMemo)(()=>q(i(t)),[t]),p=()=>c?o?(0,v.jsx)(o,{month:S,locale:s}):(0,v.jsx)(Q.View,{style:zt.monthNameContainer,children:(0,v.jsx)(Q.Text,{style:zt.monthNameText,children:mt(S,s)})}):null;return(0,v.jsxs)(Q.View,{style:[zt.calenderContainer,a],children:[p(),r?(0,v.jsx)(gt,{firstDayOfWeek:e,weekdaysShort:n,WeekDayNameComponent:m,locale:s,weekdaysFormat:D}):null,y==="week"?(0,v.jsx)(u,{children:(0,v.jsx)(dt,k(d({},l),{firstDayOfWeek:e,locale:s,currentDate:(C=(T=l.markedDates)==null?void 0:T.at(0))!=null?C:t,months:[it(t)]}))}):(0,v.jsx)(W,{children:(0,v.jsx)(pe,k(d({},l),{firstDayOfWeek:e,locale:s,date:t,month:S}))})]})});ht.displayName="Calendar";var zt=Q.StyleSheet.create({calenderContainer:{width:"100%"},weeksContainer:{gap:8},monthNameContainer:{paddingBottom:8,height:30},monthNameText:{fontSize:18,fontWeight:"bold",textAlign:"center"}});var g=ut(require("react")),ot=require("react-native");var E=require("react"),_=require("react-native"),Ie=require("@shopify/flash-list");var H=require("react/jsx-runtime"),Ut=(0,E.forwardRef)((x,f)=>{var I=x,{estimatedCalendarSize:{fiveWeekCalendarSize:t,monthTitleSize:e=30,weekDayNamesSize:n=40},CalendarSeparator:o,calendarVerticalGap:r=32,minDate:a,currentDate:m,markedDates:s,pastMonthsCount:c=0,futureMonthsCount:D=12,horizontal:y,showDayNamesOnTop:W=!1,showDayNames:u=!0,WeekDayNameComponent:l,weekdaysShort:F,firstDayOfWeek:b,calendarContentContainerStyle:S,calendarSize:p,showScrollIndicator:T,onScroll:C,showMonthName:h=!0,calendarListContentContainerStyle:Y,decelerationRate:$="fast",onEndReachedThreshold:rt,onListEndReached:z,months:w}=I,V=A(I,["estimatedCalendarSize","CalendarSeparator","calendarVerticalGap","minDate","currentDate","markedDates","pastMonthsCount","futureMonthsCount","horizontal","showDayNamesOnTop","showDayNames","WeekDayNameComponent","weekdaysShort","firstDayOfWeek","calendarContentContainerStyle","calendarSize","showScrollIndicator","onScroll","showMonthName","calendarListContentContainerStyle","decelerationRate","onEndReachedThreshold","onListEndReached","months"]);var te,ee;let N=(te=p==null?void 0:p.width)!=null?te:ft,bt=(ee=p==null?void 0:p.height)!=null?ee:De,ke=_.Platform.select({web:!0,default:!1}),Me={scrollSnapAlign:y?"center":"start",width:ke&&N===ft?"100vw":N},Jt=(0,E.useRef)(m),Kt=(0,E.useMemo)(()=>{if(Jt.current){let L=w.indexOf(it(Jt.current));return L>=0?L:0}return 0},[w]),Qt=(0,E.useCallback)(()=>o?(0,H.jsx)(o,{}):(0,H.jsx)(_.View,{style:{height:r}}),[o,r]),Xt=(0,E.useCallback)(({viewableItems:L})=>{let B=L.filter(at=>at.isViewable).map(({item:at})=>at);B&&B.length>0&&(C==null||C(B))},[C]),We=(0,E.useCallback)((L,B)=>{if(y){L.size=N;return}let at=vt(B,b),ne=t+r;if(at>5){let be=h?e:0,Ve=(t-(u&&!W?n:0)-be)/5;L.size=ne+Ve}else L.size=ne},[y,N,b,h,u,e,W,r,n,t]),Zt=({item:L})=>(0,H.jsx)(ht,k(d({},V),{showMonthName:h,showDayNames:u&&!W,firstDayOfWeek:b,weekdaysShort:F,minDate:a,markedDates:s,date:L,WeekDayNameComponent:l,contentContainerStyle:d(d({},S),Me)})),jt=(0,E.useCallback)(L=>L,[]);return(0,H.jsx)(H.Fragment,{children:y&&_.I18nManager.isRTL?(0,H.jsx)(_.FlatList,{data:w,renderItem:Zt,ref:f,ItemSeparatorComponent:Qt,keyExtractor:jt,extraData:V,horizontal:!0,pagingEnabled:!0,showsHorizontalScrollIndicator:!1,onViewableItemsChanged:Xt,initialScrollIndex:Kt,getItemLayout:(L,B)=>({length:N,offset:N*B,index:B}),initialNumToRender:1,maxToRenderPerBatch:1,contentContainerStyle:Y,decelerationRate:$,viewabilityConfig:tt}):(0,H.jsx)(Ie.FlashList,{ref:f,horizontal:y,ItemSeparatorComponent:Qt,renderItem:Zt,keyExtractor:jt,data:w,estimatedItemSize:y?N:t,estimatedListSize:{width:N,height:bt},extraData:V,pagingEnabled:y,showsHorizontalScrollIndicator:!1,showsVerticalScrollIndicator:T,onViewableItemsChanged:Xt,initialScrollIndex:Kt,overrideItemLayout:We,contentContainerStyle:Y,decelerationRate:$,onEndReached:z,onEndReachedThreshold:rt,viewabilityConfig:tt})})});Ut.displayName="FullCalendarListView";var O=require("react/jsx-runtime"),qt=g.default.memo((0,g.forwardRef)((b,F)=>{var S=b,{currentDate:t,minDate:e,pastMonthsCount:n,futureMonthsCount:o,viewAs:r="month",showMonthName:a=!0,showDayNames:m=!0,MonthNameComponent:s,onScroll:c,markedDates:D,WeekAnimatedTransitionComponent:y=g.default.Fragment,MonthAnimatedTransitionComponent:W=g.default.Fragment,onActiveMonthChange:u}=S,l=A(S,["currentDate","minDate","pastMonthsCount","futureMonthsCount","viewAs","showMonthName","showDayNames","MonthNameComponent","onScroll","markedDates","WeekAnimatedTransitionComponent","MonthAnimatedTransitionComponent","onActiveMonthChange"]);let p=(0,g.useRef)(),T=r==="week",C=(0,g.useMemo)(()=>Tt({startMonth:e,pastMonthsCount:n,futureMonthsCount:o}),[e,n,o]),[h,Y]=(0,g.useState)(t),$=()=>{if(a&&h&&T){let w=i(h);return s?(0,O.jsx)(s,{month:w,locale:l.locale}):(0,O.jsx)(ot.View,{style:Se.monthNameContainer,children:(0,O.jsx)(ot.Text,{style:Se.monthNameText,children:mt(w,l.locale)})})}return null},rt=()=>m&&l.showDayNamesOnTop||T?(0,O.jsx)(gt,{firstDayOfWeek:l.firstDayOfWeek,weekdaysShort:l.weekdaysShort,WeekDayNameComponent:l.WeekDayNameComponent,locale:l.locale,weekdaysFormat:l.weekdaysFormat}):null,z=(0,g.useCallback)(w=>{c==null||c(w);let V;if(T){let{week:f}=w[0];V=f[f.length-1]}else V=w[0];V&&Y(V)},[c,T]);return(0,g.useEffect)(()=>{D&&Y(D.at(0))},[D]),(0,g.useEffect)(()=>{h&&u&&u(h)},[h,u]),(0,g.useImperativeHandle)(F,()=>({scrollToDate(w,V=!0){var f;(f=p.current)==null||f.scrollToItem({animated:V,item:w})}})),(0,O.jsxs)(O.Fragment,{children:[$(),rt(),T?(0,O.jsx)(y,{children:(0,O.jsx)(dt,k(d({},l),{showDayNames:m,markedDates:D,ref:p,showExtraDays:!0,months:C,minDate:e,currentDate:h,onScroll:z}))}):(0,O.jsx)(W,{children:(0,O.jsx)(Ut,k(d({},l),{showDayNames:m,markedDates:D,showMonthName:a,MonthNameComponent:s,ref:p,months:C,minDate:e,currentDate:h,onScroll:z}))})]})}));qt.displayName="CalendarList";var Se=ot.StyleSheet.create({monthNameContainer:{paddingBottom:8,height:30},monthNameText:{fontSize:18,fontWeight:"bold",textAlign:"center"}});var Gt=require("react"),Ce=t=>{let e=(0,Gt.useRef)(0);e.current+=1;let n=(0,Gt.useRef)(t);return n.current!==t&&(n.current=t,e.current=1),e.current};0&&(module.exports={Calendar,CalendarList,dateStringToDate,getDatesInRange,getDayState,toLocaleDateString,useRenderCount});