From 057b9124dacbb34f0f6fd271fa673060bce7c1b7 Mon Sep 17 00:00:00 2001 From: Ravindra Kele Date: Wed, 29 Jan 2025 17:46:53 +0530 Subject: [PATCH 01/20] added - show active preset of datepicker --- package-lock.json | 4 +-- src/components/datepicker/datepicker.tsx | 33 +++++++++++++++++------- 2 files changed, 25 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index 849a79cf..1fc3726d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@bsf/force-ui", - "version": "1.2.1", + "version": "1.4.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@bsf/force-ui", - "version": "1.2.1", + "version": "1.4.0", "license": "ISC", "dependencies": { "@emotion/is-prop-valid": "^1.3.0", diff --git a/src/components/datepicker/datepicker.tsx b/src/components/datepicker/datepicker.tsx index e2b65426..c4167587 100644 --- a/src/components/datepicker/datepicker.tsx +++ b/src/components/datepicker/datepicker.tsx @@ -12,6 +12,7 @@ import { } from 'date-fns'; import { getDefaultSelectedValue } from './utils'; import { type PropsBase } from 'react-day-picker'; +import { cn } from '@/utilities/functions'; export interface DatePickerProps { /** Defines the selection selectionType of the date picker: single, range, or multiple dates. */ @@ -226,16 +227,28 @@ const DatePicker = ( { return (
- { presets.map( ( preset, index ) => ( - - ) ) } + { presets.map( ( preset, index ) => { + const isSelected = + selectedDates && + 'from' in selectedDates && + 'to' in selectedDates && + selectedDates.from?.getTime() === preset.range.from.getTime() && + selectedDates.to?.getTime() === preset.range.to.getTime(); + + return ( + + ); + } ) }
Date: Wed, 29 Jan 2025 18:06:29 +0530 Subject: [PATCH 02/20] storybook and lint fix --- src/components/datepicker/datepicker.stories.tsx | 5 +++++ src/components/datepicker/datepicker.tsx | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/components/datepicker/datepicker.stories.tsx b/src/components/datepicker/datepicker.stories.tsx index 7e07acae..bf80e335 100644 --- a/src/components/datepicker/datepicker.stories.tsx +++ b/src/components/datepicker/datepicker.stories.tsx @@ -162,6 +162,11 @@ WithPresets.args = { }, }, ], + // set last_week selected for testing. + selected: { + from: startOfWeek( subWeeks( new Date(), 1 ), { weekStartsOn: 1 } ), + to: endOfWeek( subWeeks( new Date(), 1 ), { weekStartsOn: 1 } ), + }, onApply: () => { //code }, diff --git a/src/components/datepicker/datepicker.tsx b/src/components/datepicker/datepicker.tsx index c4167587..6209a53c 100644 --- a/src/components/datepicker/datepicker.tsx +++ b/src/components/datepicker/datepicker.tsx @@ -232,8 +232,10 @@ const DatePicker = ( { selectedDates && 'from' in selectedDates && 'to' in selectedDates && - selectedDates.from?.getTime() === preset.range.from.getTime() && - selectedDates.to?.getTime() === preset.range.to.getTime(); + selectedDates.from?.getTime() === + preset.range.from.getTime() && + selectedDates.to?.getTime() === + preset.range.to.getTime(); return (