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) • 1.79 kB
JavaScript
'use client';
var i=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var w=Object.getOwnPropertyNames;var G=Object.prototype.hasOwnProperty;var E=(t,e)=>{for(var r in e)i(t,r,{get:e[r],enumerable:!0})},v=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of w(e))!G.call(t,o)&&o!==r&&i(t,o,{get:()=>e[o],enumerable:!(n=O(e,o))||n.enumerable});return t};var U=t=>v(i({},"__esModule",{value:!0}),t);var L={};E(L,{useDatePicker:()=>H});module.exports=U(L);var g=require("react"),u=require("@internationalized/date"),D=require("@react-aria/datepicker"),s=require("@react-aria/utils"),d=require("@react-stately/datepicker");var j=require("@internationalized/date"),B=require("clsx");var c=t=>t?"true":void 0;var H=(t={})=>{let{minValue:e=new u.CalendarDate(1900,1,1),maxValue:r=new u.CalendarDate(2099,12,31),timeInputProps:n={},dateInputProps:o={},calendarProps:f={},...l}=t,P=(0,g.useRef)(null),a=(0,d.useDatePickerState)({...l,minValue:e,maxValue:r,shouldCloseOnSelect:()=>!a.hasTime}),{groupProps:T,labelProps:y,fieldProps:V,buttonProps:m,dialogProps:b,calendarProps:h}=(0,D.useDatePicker)({...l,minValue:e,maxValue:r},a,P),p=a.granularity==="hour"||a.granularity==="minute"||a.granularity==="second"?a.granularity:null,I=!!p,{onPress:Y,isDisabled:x,...A}=m,k={...A,onClick:()=>a.toggle(),"data-disabled":c(x)},C={...V,groupProps:T,labelProps:y,granularity:p,label:t.label},M=e&&"hour"in e?e:null,S=r&&"hour"in r?r:null,R=I?{...n,value:a.timeValue,onChange:a.setTimeValue,granularity:p,minValue:M??void 0,maxValue:S??void 0}:{};return{ref:P,state:a,getTriggerProps:k,getAriaTriggerProps:m,getTimeInputProps:(0,s.mergeProps)(R,n),getDateInputProps:(0,s.mergeProps)(C,o),getCalendarProps:(0,s.mergeProps)(h,f),getDialogProps:b}};0&&(module.exports={useDatePicker});