fix: refactor calnedar code
This commit is contained in:
parent
efa46a02c2
commit
386e05d934
|
|
@ -104,31 +104,26 @@ export function Header({
|
|||
}
|
||||
};
|
||||
|
||||
const nextFromYearHandler = () => {
|
||||
if (currentYear && (currentYear.since ?? 0) < (currentYear.until ?? 0)) {
|
||||
const data = {
|
||||
...currentYear,
|
||||
since: currentYear.since! + 1,
|
||||
};
|
||||
setCurrentYear(data);
|
||||
EventBus.emit("dateSelected", {
|
||||
...selectedDate,
|
||||
start: `${data.since}/${selectedDate.start?.split("/").slice(1).join("/")}`,
|
||||
});
|
||||
}
|
||||
const changeSinceYear = (delta: number) => {
|
||||
if (!currentYear) return;
|
||||
|
||||
const newSince = (currentYear.since ?? 0) + delta;
|
||||
|
||||
if (newSince > (currentYear.until ?? Infinity) || newSince < 0) return;
|
||||
|
||||
const updatedYear = { ...currentYear, since: newSince };
|
||||
setCurrentYear(updatedYear);
|
||||
|
||||
const updatedDate = {
|
||||
...selectedDate,
|
||||
start: `${newSince}/${selectedDate.start?.split("/").slice(1).join("/")}`,
|
||||
};
|
||||
setSelectedDate(updatedDate);
|
||||
EventBus.emit("dateSelected", updatedDate);
|
||||
};
|
||||
|
||||
const prevFromYearHandler = () => {
|
||||
const data = {
|
||||
...currentYear,
|
||||
since: currentYear.since! - 1,
|
||||
};
|
||||
setCurrentYear(data);
|
||||
EventBus.emit("dateSelected", {
|
||||
...selectedDate,
|
||||
start: `${data.since}/${selectedDate.start?.split("/").slice(1).join("/")}`,
|
||||
});
|
||||
};
|
||||
const nextFromYearHandler = () => changeSinceYear(1);
|
||||
const prevFromYearHandler = () => changeSinceYear(-1);
|
||||
|
||||
const selectFromDateHandler = (val: MonthItem) => {
|
||||
const data = {
|
||||
|
|
@ -140,31 +135,26 @@ export function Header({
|
|||
EventBus.emit("dateSelected", data);
|
||||
};
|
||||
|
||||
const nextUntilYearHandler = () => {
|
||||
const data = {
|
||||
...currentYear,
|
||||
until: currentYear.until! + 1,
|
||||
};
|
||||
setCurrentYear(data);
|
||||
EventBus.emit("dateSelected", {
|
||||
const changeUntilYear = (delta: number) => {
|
||||
if (!currentYear) return;
|
||||
|
||||
const newUntil = (currentYear.until ?? 0) + delta;
|
||||
|
||||
if (newUntil < (currentYear.since ?? 0)) return;
|
||||
|
||||
const updatedYear = { ...currentYear, until: newUntil };
|
||||
setCurrentYear(updatedYear);
|
||||
|
||||
const updatedDate = {
|
||||
...selectedDate,
|
||||
end: `${data.until}/${selectedDate?.end?.split("/").slice(1).join("/")}`,
|
||||
});
|
||||
end: `${newUntil}/${selectedDate.end?.split("/").slice(1).join("/")}`,
|
||||
};
|
||||
setSelectedDate(updatedDate);
|
||||
EventBus.emit("dateSelected", updatedDate);
|
||||
};
|
||||
|
||||
const prevUntilYearHandler = () => {
|
||||
if (currentYear && (currentYear.since ?? 0) < (currentYear.until ?? 0)) {
|
||||
const data = {
|
||||
...currentYear,
|
||||
until: currentYear.until! - 1,
|
||||
};
|
||||
setCurrentYear(data);
|
||||
EventBus.emit("dateSelected", {
|
||||
...selectedDate,
|
||||
end: `${data.until}/${selectedDate.end?.split("/").slice(1).join("/")}`,
|
||||
});
|
||||
}
|
||||
};
|
||||
const nextUntilYearHandler = () => changeUntilYear(1);
|
||||
const prevUntilYearHandler = () => changeUntilYear(-1);
|
||||
|
||||
const selectUntilDateHandler = (val: MonthItem) => {
|
||||
const data = {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user