react-calendar-kit
Version:
React Calendar Kit is a powerful and flexible library for building accessible and highly customizable calendar and date/time picker components in your React applications. React Calendar Kit provides a solid foundation for creating inclusive user experienc
3 lines (2 loc) • 2.53 kB
JavaScript
'use client';
var I=Object.create;var f=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var W=Object.getOwnPropertyNames;var Y=Object.getPrototypeOf,Z=Object.prototype.hasOwnProperty;var j=(e,t)=>{for(var r in t)f(e,r,{get:t[r],enumerable:!0})},h=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let d of W(t))!Z.call(e,d)&&d!==r&&f(e,d,{get:()=>t[d],enumerable:!(n=T(t,d))||n.enumerable});return e};var q=(e,t,r)=>(r=e!=null?I(Y(e)):{},h(t||!e||!e.__esModule?f(r,"default",{value:e,enumerable:!0}):r,e)),z=e=>h(f({},"__esModule",{value:!0}),e);var Q={};j(Q,{CalendarCell:()=>K});module.exports=z(Q);var i=q(require("react")),s=require("@internationalized/date"),p=require("@react-aria/calendar"),S=require("@react-aria/focus"),b=require("@react-aria/i18n"),D=require("@react-aria/interactions"),P=require("@react-aria/utils");var G=require("@internationalized/date"),J=require("clsx");var a=e=>e?"true":void 0;function K({isPickerVisible:e,classNames:t,styles:r,state:n,currentMonth:d,...l}){let{locale:R}=(0,b.useLocale)(),g=(0,i.useRef)(null),{cellProps:v,buttonProps:x,isPressed:V,isSelected:o,isDisabled:c,isFocused:M,isInvalid:u,formattedDate:O}=(0,p.useCalendarCell)({...l,date:l.date,isDisabled:!(0,s.isSameMonth)(l.date,d)||e},n,g),y=n.isCellUnavailable(l.date),A=!c&&!u&&n.isCellUnavailable(l.date.add({days:1})),B=!c&&!u&&n.isCellUnavailable(l.date.subtract({days:1})),m="highlightedRange"in n&&n.highlightedRange,E=o&&m&&(0,s.isSameDay)(l.date,m.start),w=o&&m&&(0,s.isSameDay)(l.date,m.end),C=(0,s.getDayOfWeek)(l.date,R),F=o&&(B||C===0||l.date.day===1),N=o&&(A||C===6||l.date.day===d.calendar.getDaysInMonth(d)),{focusProps:U,isFocusVisible:k}=(0,S.useFocusRing)(),{hoverProps:H,isHovered:L}=(0,D.useHover)({isDisabled:c||y||n.isReadOnly});return i.default.createElement("td",{...v,role:"grid-body-cell",className:t.gridBodyCell},i.default.createElement("span",{...(0,P.mergeProps)(x,H,U),className:t.cellButton,style:r?.cellButton,ref:g,role:"button","data-disabled":a(c&&!u),"data-focus-visible":a(M&&k),"data-hover":a(L),"data-invalid":a(u),"data-outside-month":a(!(0,s.isSameMonth)(l.date,d)),"data-pressed":a(V&&!n.isReadOnly),"data-range-end":a(N),"data-range-selection":a(o&&"highlightedRange"in n),"data-range-start":a(F),"data-readonly":a(n.isReadOnly),"data-selected":a(o),"data-selection-end":a(w),"data-selection-start":a(E),"data-today":a((0,s.isToday)(l.date,n.timeZone)),"data-unavailable":a(y)},i.default.createElement("span",null,O)))}0&&(module.exports={CalendarCell});