@rnwonder/react-date-picker
Version:
A simple and reusable Datepicker component for ReactJS ([Demo](https://stackblitz.com/edit/solidjs-templates-dof6jl?file=src%2FApp.tsx))
2 lines (1 loc) • 2.84 kB
JavaScript
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),t=require("../DatePickerMonthAndYearSelector/index.js"),n=require("../Button/index.js"),r=require("../PrevIcon/index.js"),a=require("../NextIcon/index.js"),o=require("../../utils/class.js"),s=require("../../node_modules/.pnpm/@rnwonder_simple-datejs@1.0.8/node_modules/@rnwonder/simple-datejs/dist/general-D5nVjUqG.js"),i=require("react"),l=require("../Helpers/Show.js");exports.DatePickerTop=d=>{const c=i.useCallback((()=>{if(!d.minDate&&!d.enabledDays)return!1;if(d.minDate){if(d.year<d.minDate.year)return!0;if(d.year===d.minDate.year&&d.month-1<d.minDate.month)return!0}const{month:e,year:t}=s.v(d.year,d.month);return s.d({enabledDays:d.enabledDays,year:t,month:e,prev:!0})}),[d.minDate,d.enabledDays,d.year,d.month]),h=i.useCallback((()=>{if(!d.maxDate&&!d.enabledDays)return!1;if(d.maxDate){if(d.year>d.maxDate.year)return!0;if(d.year===d.maxDate.year&&d.month+1>d.maxDate.month)return!0}const{year:e,month:t}=s.u(d.year,d.month);return s.d({enabledDays:d.enabledDays,year:e,month:t,next:!0})}),[d.enabledDays,d.maxDate,d.month,d.year]);return e.jsxs("div",{className:o.cn("\n date-picker-top \n rn-mb-[0.3125rem] \n rn-flex \n rn-items-center \n rn-justify-between \n rn-px-2\n ",d.datePickerTopAreaClass),"data-type":"date-picker-top",children:[e.jsx(l,{when:!!d.prevButtonAreaJSX,children:d.prevButtonAreaJSX}),e.jsx(l,{when:!d.removeNavButtons,children:e.jsx(n.Button,{className:o.cn("date-prev-next-btn date-prev-btn rn-text-black disabled:rn-opacity-10 dark:rn-text-white",d.prevMonthBtnClass,d.prevNextMonthBtnClass),"data-prev":!0,"data-type":"date-prev-next-btn","aria-label":"Move backward to switch to the previous month","data-scope":"button","data-part":"root",disabled:c(),onClick:d.handlePrevMonth,style:{...d.arrowsColor&&{color:d.arrowsColor}},noButtonAnimation:d.noButtonAnimation,children:d.prevIcon||e.jsx(r.PrevIcon,{color:d.arrowsColor})})}),e.jsx(l,{when:!!d.monthYearSelectorJSX,children:d.monthYearSelectorJSX}),e.jsx(l,{when:!d.monthYearSelectorJSX,children:e.jsx(t.DatePickerMonthAndYearSelector,{...{...d,startDay:void 0}})}),e.jsx(l,{when:!d.removeNavButtons,children:e.jsx(n.Button,{className:o.cn("date-prev-next-btn date-next-btn rn-text-black disabled:rn-opacity-10 dark:rn-text-white",d.nextMonthBtnClass,d.prevNextMonthBtnClass),"data-next":!0,"aria-label":"Move forward to switch to the next month.","data-scope":"button","data-part":"root","data-type":"date-prev-next-btn",onClick:d.handleNextMonth,disabled:h(),style:{...d.arrowsColor&&{color:d.arrowsColor}},noButtonAnimation:d.noButtonAnimation,children:d.nextIcon||e.jsx(a.NextIcon,{color:d.arrowsColor})})}),e.jsx(l,{when:!!d.nextButtonAreaJSX,children:d.nextButtonAreaJSX})]})};