UNPKG

react-box-tools

Version:

Box tools react components, utils and hooks

2 lines (1 loc) 1.69 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-runtime"),A=require("./dropdown-CkR4kz4M.cjs"),B=require("./clsx-CeOg4f1g.cjs"),p=require("react"),n=require("./useCalendar-IaK1bX3z.cjs"),E=require("./calendar-CTN_Spmd.cjs"),G=m=>{const{offset:x=1,format:a="dd/mm/yyyy",culture:o,range:s=!1,monthsToShow:f=1,monthDropDown:y={},yearDropDown:D={},refilldays:g=!1,arrow:h=!1,style:j,className:R,contentClass:w,direction:C="down-left",width:S="auto",mode:q="toggle",onFirstOpen:F,onOpen:N,onClose:O,intersect:T=!0,todayText:$,minDate:v,maxDate:I,value:k,onSelected:P=()=>{},onSelectedRange:b=()=>{},icons:r={}}=m,c=p.useRef(null),[H,d]=p.useState(""),l=()=>{var e;(e=c.current)==null||e.setOpen(!1)},L=e=>{l(),i(e),P(e)},M=e=>{l(),u(e),b(e)},i=e=>{d(n.dateFormat(e,a,o))},u=e=>{d(`${n.dateFormat(e.from,a,o)} - ${n.dateFormat(e.to,a,o)}`)},z=e=>{e.date&&i(e.date),e.dateRange&&u(e.dateRange)};return t.jsx(n.Calendar,{format:a,monthsToShow:f,culture:o,refilldays:g,range:s,todayText:$,onSelected:L,onSelectedRange:M,onLoad:z,minDate:v,maxDate:I,value:k,children:t.jsxs(A.DropDown,{ref:c,direction:C,arrow:h,mode:q,width:S,className:B.clsx(`datepicker ${R}`),offset:x,onFirstOpen:F,onOpen:N,onClose:O,intersect:T,style:j,contentClass:w,target:t.jsxs("div",{className:"dp-input",children:[t.jsx("input",{className:"dp-date",type:"text",placeholder:s?`${a} - ${a}`:a,readOnly:!0,value:H}),t.jsx("span",{className:"dp-icon",children:r.calendar??t.jsx(E.CalendarIcon,{})})]}),children:[t.jsx(n.Calendar.Controls,{monthDropDown:y,yearDropDown:D,icons:r}),t.jsx(n.Calendar.Months,{})]})})};exports.dateFormat=n.dateFormat;exports.DatePicker=G;