UNPKG

@awsui/components-react

Version:

On July 19th, 2022, we launched [Cloudscape Design System](https://cloudscape.design). Cloudscape is an evolution of AWS-UI. It consists of user interface guidelines, front-end components, design resources, and development tools for building intuitive, en

57 lines 1.9 kB
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // SPDX-License-Identifier: Apache-2.0 import { addMonths, addYears, isSameMonth, isSameYear, startOfMonth, startOfYear } from 'date-fns'; import { parseDate } from '../../internal/utils/date-time'; export function findDateToFocus(selected, baseDate, isDateEnabled) { if (selected && isDateEnabled(selected) && isSameMonth(selected, baseDate)) { return selected; } const today = new Date(); if (isDateEnabled(today) && isSameMonth(today, baseDate)) { return today; } if (isDateEnabled(baseDate)) { return baseDate; } return null; } export function findMonthToFocus(selected, baseDate, isMonthEnabled) { if (selected && isMonthEnabled(selected) && isSameYear(selected, baseDate)) { return selected; } const today = new Date(); if (isMonthEnabled(today) && isSameYear(today, baseDate)) { return today; } if (isMonthEnabled(baseDate)) { return baseDate; } return null; } export function findMonthToDisplay(value, isSingleGrid) { if (value.start.date) { const startDate = parseDate(value.start.date); if (isSingleGrid) { return startOfMonth(startDate); } return startOfMonth(addMonths(startDate, 1)); } if (value.end.date) { return startOfMonth(parseDate(value.end.date)); } return startOfMonth(Date.now()); } export function findYearToDisplay(value, isSingleGrid) { if (value.start.date) { const startDate = parseDate(value.start.date); if (isSingleGrid) { return startOfYear(startDate); } return startOfYear(addYears(startDate, 1)); } if (value.end.date) { return startOfYear(parseDate(value.end.date)); } return startOfYear(Date.now()); } //# sourceMappingURL=utils.js.map