Skip to content

Commit

Permalink
Merge pull request #979 from airbnb/maja-fix-selected-specificity-on-ccd
Browse files Browse the repository at this point in the history
Fix specificity issues with selected styles on the CustomizableCalendarDay
  • Loading branch information
majapw committed Jan 26, 2018
2 parents fea1be8 + 0571caa commit d966001
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 5 deletions.
10 changes: 5 additions & 5 deletions src/components/CustomizableCalendarDay.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,9 @@ const propTypes = forbidExtraProps({
hoveredSpanStyles: DayStyleShape,
selectedSpanStyles: DayStyleShape,
lastInRangeStyles: DayStyleShape,
selectedStyles: DayStyleShape,
selectedStartStyles: DayStyleShape,
selectedEndStyles: DayStyleShape,
selectedStyles: DayStyleShape,
afterHoveredStartStyles: DayStyleShape,

// internationalization
Expand Down Expand Up @@ -169,8 +169,6 @@ const defaultProps = {
lastInRangeStyles: {
borderRight: color.core.primary,
},
selectedStartStyles: {},
selectedEndStyles: {},
selectedStyles: {
background: color.selected.backgroundColor,
border: `1px solid ${color.selected.borderColor}`,
Expand All @@ -182,6 +180,8 @@ const defaultProps = {
color: color.selected.color_active,
},
},
selectedStartStyles: {},
selectedEndStyles: {},
afterHoveredStartStyles: {},

// internationalization
Expand Down Expand Up @@ -266,9 +266,9 @@ class CustomizableCalendarDay extends React.Component {
hoveredSpanStyles: hoveredSpanStylesWithHover,
selectedSpanStyles: selectedSpanStylesWithHover,
lastInRangeStyles: lastInRangeStylesWithHover,
selectedStyles: selectedStylesWithHover,
selectedStartStyles: selectedStartStylesWithHover,
selectedEndStyles: selectedEndStylesWithHover,
selectedStyles: selectedStylesWithHover,
afterHoveredStartStyles: afterHoveredStartStylesWithHover,
} = this.props;

Expand Down Expand Up @@ -316,9 +316,9 @@ class CustomizableCalendarDay extends React.Component {
modifiers.has('after-hovered-start') && afterHoveredStartStyles,
modifiers.has('selected-span') && selectedSpanStyles,
modifiers.has('last-in-range') && lastInRangeStyles,
selected && selectedStyles,
modifiers.has('selected-start') && selectedStartStyles,
modifiers.has('selected-end') && selectedEndStyles,
selected && selectedStyles,
isOutsideRange && blockedOutOfRangeStyles,
)}
role="button" // eslint-disable-line jsx-a11y/no-noninteractive-element-to-interactive-role
Expand Down
16 changes: 16 additions & 0 deletions stories/DateRangePicker_day.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,26 @@ const hoveredStyles = {
color: '#fff',
};

const blockedStyles = {
background: '#fff',
border: '1px double #e4e7e7',
color: '#dce0e0',

hover: {
background: '#fff',
border: '1px double #e4e7e7',
color: '#dce0e0',
},
};

const customDayStyles = {
selectedStartStyles: selectedStyles,
selectedEndStyles: selectedStyles,
hoveredSpanStyles: hoveredStyles,
afterHoveredStartStyles: hoveredStyles,
blockedMinNightsStyles: blockedStyles,
blockedCalendarStyles: blockedStyles,
blockedOutOfRangeStyles: blockedStyles,

selectedSpanStyles: {
background: '#9b32a2',
Expand Down Expand Up @@ -116,6 +131,7 @@ storiesOf('DRP - Day Props', module)
))
.addWithInfo('one-off custom styling', () => (
<DateRangePickerWrapper
minimumNights={3}
renderCalendarDay={props => <CustomizableCalendarDay {...props} {...customDayStyles} />}
autoFocus
/>
Expand Down

0 comments on commit d966001

Please sign in to comment.