Skip to content

Commit

Permalink
refactor to use common methods
Browse files Browse the repository at this point in the history
  • Loading branch information
antony committed Jan 19, 2019
1 parent af264fa commit 82280a0
Show file tree
Hide file tree
Showing 8 changed files with 24 additions and 18 deletions.
2 changes: 1 addition & 1 deletion docs/bundle.css.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/bundle.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/bundle.js.map

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions docs/test.css.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/test.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/test.js.map

Large diffs are not rendered by default.

11 changes: 4 additions & 7 deletions src/Components/Week.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
class="day--label"
class:selected="datesAreSameDay(day.date,selected)"
on:click="fire('dateSelected',day.date)"
disabled="{isBefore(start, day.date) || isAfter(end, day.date)}"
disabled="{!isDaySelectable(day.date, start, end)}"
>
{day.date.getDate()}
</button>
Expand Down Expand Up @@ -82,19 +82,16 @@
</style>

<script>
import { isDaySelectable } from './lib/helpers'

export default {
helpers: {
datesAreSameDay(a,b) {
return a.getDate() == b.getDate()
&& a.getMonth() == b.getMonth()
&& a.getFullYear() == b.getFullYear()
},
isBefore (start, day) {
return day < start
},
isAfter (end, day) {
return day > end
},
isDaySelectable
}
}
</script>
15 changes: 12 additions & 3 deletions src/Components/lib/helpers.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,20 @@ const getCalendarPage = (month,year,dayProps) => {
return { month, year, weeks }
}

function isDaySelectable (day, start, end) {
return day >= start && day <= end;
}

const getDayPropsHandler = (start,end) => {
let today = new Date();
today.setHours(0,0,0,0);
return date => ({
selectable: date >= start && date <= end,
selectable: isDaySelectable(today, start, end),
isToday: date.getTime() == today.getTime()
});
};

export function getMonths(start, end) {
function getMonths(start, end) {
start.setHours(0,0,0,0);
end.setHours(0,0,0,0);
let endDate = new Date(end.getFullYear(), end.getMonth() + 1, 1);
Expand All @@ -40,4 +44,9 @@ export function getMonths(start, end) {
date.setMonth(date.getMonth() + 1);
}
return months;
}
}

export {
getMonths,
isDaySelectable
};

0 comments on commit 82280a0

Please sign in to comment.