UNPKG

rsuite

Version:

A suite of react components

42 lines (40 loc) 1.17 kB
'use client'; "use strict"; exports.__esModule = true; exports.useCalendar = void 0; var _react = require("react"); var _CalendarProvider = require("../CalendarProvider"); const useCalendar = () => { const { locale, showWeekNumbers, isoWeek, weekStart: weekStartProp, ...rest } = (0, _react.useContext)(_CalendarProvider.CalendarContext); // Determine the start of the week based on various conditions const weekStart = (0, _react.useMemo)(() => { // If weekStartProp is explicitly provided, use it if (typeof weekStartProp !== 'undefined') { return weekStartProp; } // If using ISO week, start on Monday (1) else if (isoWeek) { return 1; } // If locale specifies a weekStartsOn option, use it else if (locale?.dateLocale?.options?.weekStartsOn !== undefined) { return locale.dateLocale.options.weekStartsOn; } // Default to Sunday (0) if no other condition is met return 0; }, [weekStartProp, isoWeek, locale?.dateLocale?.options?.weekStartsOn]); return { locale, showWeekNumbers, isoWeek, weekStart, ...rest }; }; exports.useCalendar = useCalendar;