@arolariu/components
Version:
A collection of reusable components for React applications, built as ESM & CJS modules with tree shake, minify and bundler optimizations enabled, for the lowest bundle size (import cost)!
92 lines (91 loc) • 5.34 kB
JavaScript
"use client";
;
var __webpack_require__ = {};
(()=>{
__webpack_require__.d = (exports1, definition)=>{
for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
enumerable: true,
get: definition[key]
});
};
})();
(()=>{
__webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
})();
(()=>{
__webpack_require__.r = (exports1)=>{
if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
value: 'Module'
});
Object.defineProperty(exports1, '__esModule', {
value: true
});
};
})();
var __webpack_exports__ = {};
__webpack_require__.r(__webpack_exports__);
__webpack_require__.d(__webpack_exports__, {
Calendar: ()=>Calendar
});
const jsx_runtime_namespaceObject = require("react/jsx-runtime");
require("react");
const external_lucide_react_namespaceObject = require("lucide-react");
const external_react_day_picker_namespaceObject = require("react-day-picker");
const utils_cjs_namespaceObject = require("../../lib/utils.cjs");
const external_button_cjs_namespaceObject = require("./button.cjs");
function Calendar({ className, classNames, showOutsideDays = true, ...props }) {
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_react_day_picker_namespaceObject.DayPicker, {
showOutsideDays: showOutsideDays,
className: (0, utils_cjs_namespaceObject.cn)("p-3", className),
classNames: {
months: "flex flex-col sm:flex-row gap-2",
month: "flex flex-col gap-4",
month_caption: "flex justify-center pt-1 relative items-center w-full",
caption_label: "text-sm font-medium",
nav: "flex items-center gap-1",
nav_button: (0, utils_cjs_namespaceObject.cn)((0, external_button_cjs_namespaceObject.buttonVariants)({
variant: "outline"
}), "size-7 bg-transparent p-0 opacity-50 hover:opacity-100"),
button_previous: "absolute left-1",
button_next: "absolute right-1",
month_grid: "w-full border-collapse space-x-1",
weekdays: "flex",
weekday: "text-neutral-500 rounded-md w-8 font-normal text-[0.8rem] dark:text-neutral-400",
row: "flex w-full mt-2",
day: (0, utils_cjs_namespaceObject.cn)("relative p-0 text-center text-sm focus-within:relative focus-within:z-20 [&:has([aria-selected])]:bg-neutral-100 [&:has([aria-selected].day-range-end)]:rounded-r-md dark:[&:has([aria-selected])]:bg-neutral-800", "range" === props.mode ? "[&:has(>.day-range-end)]:rounded-r-md [&:has(>.day-range-start)]:rounded-l-md first:[&:has([aria-selected])]:rounded-l-md last:[&:has([aria-selected])]:rounded-r-md" : "[&:has([aria-selected])]:rounded-md"),
day_button: (0, utils_cjs_namespaceObject.cn)((0, external_button_cjs_namespaceObject.buttonVariants)({
variant: "ghost"
}), "size-8 p-0 font-normal aria-selected:opacity-100"),
range_start: "day-range-start aria-selected:bg-neutral-900 aria-selected:text-neutral-50 dark:aria-selected:bg-neutral-50 dark:aria-selected:text-neutral-900",
range_end: "day-range-end aria-selected:bg-neutral-900 aria-selected:text-neutral-50 dark:aria-selected:bg-neutral-50 dark:aria-selected:text-neutral-900",
selected: "bg-neutral-900 text-neutral-50 hover:bg-neutral-900 hover:text-neutral-50 focus:bg-neutral-900 focus:text-neutral-50 dark:bg-neutral-50 dark:text-neutral-900 dark:hover:bg-neutral-50 dark:hover:text-neutral-900 dark:focus:bg-neutral-50 dark:focus:text-neutral-900",
today: "bg-neutral-100 text-neutral-900 dark:bg-neutral-800 dark:text-neutral-50",
outside: "day-outside text-neutral-500 aria-selected:text-neutral-500 dark:text-neutral-400 dark:aria-selected:text-neutral-400",
disabled: "text-neutral-500 opacity-50 dark:text-neutral-400",
range_middle: "aria-selected:bg-neutral-100 aria-selected:text-neutral-900 dark:aria-selected:bg-neutral-800 dark:aria-selected:text-neutral-50",
hidden: "invisible",
...classNames
},
components: {
Chevron: ({ className, ...props })=>{
if ("left" === props.orientation) return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.ChevronLeft, {
className: (0, utils_cjs_namespaceObject.cn)("size-4", className),
...props
});
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.ChevronRight, {
className: (0, utils_cjs_namespaceObject.cn)("size-4", className),
...props
});
}
},
...props
});
}
exports.Calendar = __webpack_exports__.Calendar;
for(var __webpack_i__ in __webpack_exports__)if (-1 === [
"Calendar"
].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
Object.defineProperty(exports, '__esModule', {
value: true
});
//# sourceMappingURL=calendar.cjs.map