Skip to content

Commit

Permalink
feat: add new isDisabled and isInCurrentMonth for items and deprecate…
Browse files Browse the repository at this point in the history
…d disabled
  • Loading branch information
aliakbarazizi committed Jan 2, 2024
1 parent 2e690ef commit 4d75e17
Show file tree
Hide file tree
Showing 6 changed files with 52 additions and 2 deletions.
2 changes: 2 additions & 0 deletions src/components/datepicker/item/Item.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ export const DateItem = {
args: {
item: {
type: 'day',
isInCurrentMonth: true,
isDisabled: false,
disabled: false,
isSelected: false,
isHeader: false,
Expand Down
2 changes: 1 addition & 1 deletion src/components/datepicker/items/Items.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ export const DateItems = {
className={classNames(
'grid items-center justify-center rounded-full py-1.5 text-sm font-medium select-none',
item.isHeader ? 'cursor-default' : 'hover:bg-gray-700',
item.disabled ? 'text-gray-500' : 'hover:text-white',
'isInCurrentMonth' in item && item.isInCurrentMonth ? 'text-gray-500' : 'hover:text-white',
item.type === 'day' && 'h-8 w-8',
item.isSelected && 'bg-gray-600',
item.isToday && 'border border-gray-500',
Expand Down
4 changes: 3 additions & 1 deletion src/components/datepicker/picker/Picker.stories.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,9 @@ export const Calendar: Story = {
className={classNames(
'flex items-center justify-center rounded-md py-1.5 text-sm font-medium select-none',
item.isHeader ? 'cursor-default' : 'hover:bg-gray-700',
item.disabled ? 'text-gray-500' : 'hover:text-white',
'isInCurrentMonth' in item && item.isInCurrentMonth
? 'text-gray-500'
: 'hover:text-white',
item.isSelected && 'bg-gray-600',
item.isToday && 'border border-gray-500',
)}
Expand Down
32 changes: 32 additions & 0 deletions src/context/context.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,15 @@ export type DateItemType =
*/
isToday: boolean;

isDisabled: boolean;

isSelected: boolean;

isHeader: true;

/**
* @deprecated
*/
disabled: boolean;

text: string;
Expand All @@ -45,10 +50,17 @@ export type DateItemType =
*/
isToday: boolean;

isInCurrentMonth: boolean;

isSelected: boolean;

isHeader: false;

isDisabled: boolean;

/**
* @deprecated
*/
disabled: boolean;

text: string;
Expand All @@ -72,6 +84,11 @@ export type DateItemType =

isHeader: boolean;

isDisabled: boolean;

/**
* @deprecated
*/
disabled: boolean;

text: string;
Expand All @@ -95,6 +112,11 @@ export type DateItemType =

isHeader: boolean;

isDisabled: boolean;

/**
* @deprecated
*/
disabled: boolean;

text: string;
Expand All @@ -114,6 +136,11 @@ export type HourItemType =

isHeader: false;

isDisabled: boolean;

/**
* @deprecated
*/
disabled: false;

value: number;
Expand All @@ -131,6 +158,11 @@ export type HourItemType =

isHeader: false;

isDisabled: boolean;

/**
* @deprecated
*/
disabled: false;

value: number;
Expand Down
7 changes: 7 additions & 0 deletions src/jalali/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ export const config: DatepickerConfig = {
isToday: todayYear === value + 1300,
isSelected: year === value + 1300,
isHeader: false,
isDisabled: false,
disabled: false,

value: value + 1300,
Expand All @@ -97,6 +98,7 @@ export const config: DatepickerConfig = {
isToday: todayMonth === value + 1,
isSelected: month === value + 1,
isHeader: false,
isDisabled: false,
disabled: false,

value: value + 1,
Expand Down Expand Up @@ -125,6 +127,7 @@ export const config: DatepickerConfig = {
isToday: false,
isSelected: false,
isHeader: true,
isDisabled: false,
disabled: false,

value: i,
Expand All @@ -142,6 +145,8 @@ export const config: DatepickerConfig = {
isSelected: selectedDate === date.getTime(),

isHeader: false,
isDisabled: false,
isInCurrentMonth: date < end && date >= start,
disabled: date < start || date > end,

value: date,
Expand All @@ -158,6 +163,7 @@ export const config: DatepickerConfig = {
isToday: false,
isSelected: hour === value,
isHeader: false,
isDisabled: false,
disabled: false,
})),
minutes: ({ type, minute }) =>
Expand All @@ -169,6 +175,7 @@ export const config: DatepickerConfig = {
isToday: false,
isSelected: minute === value,
isHeader: false,
isDisabled: false,
disabled: false,
})),
};
Expand Down
7 changes: 7 additions & 0 deletions src/utils/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ export const config: DatepickerConfig = {
isToday: todayYear === value + 1900,
isSelected: year === value + 1900,
isHeader: false,
isDisabled: false,
disabled: false,

value: value + 1900,
Expand All @@ -83,6 +84,7 @@ export const config: DatepickerConfig = {
isToday: todayMonth === value,
isSelected: month === value + 1,
isHeader: false,
isDisabled: false,
disabled: false,

value: value + 1,
Expand All @@ -109,6 +111,7 @@ export const config: DatepickerConfig = {
isToday: false,
isSelected: false,
isHeader: true,
isDisabled: false,
disabled: false,

value: i,
Expand All @@ -125,6 +128,8 @@ export const config: DatepickerConfig = {
isToday: todayDate === date.getTime(),
isSelected: selectedDate === date.getTime(),
isHeader: false,
isInCurrentMonth: date < start || date > end,
isDisabled: date < start || date > end,
disabled: date < start || date > end,

value: date,
Expand All @@ -141,6 +146,7 @@ export const config: DatepickerConfig = {
isToday: false,
isSelected: hour === value,
isHeader: false,
isDisabled: false,
disabled: false,
})),

Expand All @@ -153,6 +159,7 @@ export const config: DatepickerConfig = {
isToday: false,
isSelected: minute === value,
isHeader: false,
isDisabled: false,
disabled: false,
})),
};

0 comments on commit 4d75e17

Please sign in to comment.