#708 apply strictier linting rules (#717)

* #708 apply strictier linting rules and fix simple eslint bugs

* #708 fix eslint errors relate to promise

* #708 fix eslint import/no-extraneous-dependencies

* #708 fix eslint errors of react-hook

* #708 enable eslint check for typescript

---------

Co-authored-by: lethemanh <lethemanh@lethemanhs-MacBook-Pro.local>
This commit is contained in:
lethemanh
2026-04-01 22:15:10 +07:00
committed by GitHub
parent 2bff6aae78
commit cadfa70e60
321 changed files with 27452 additions and 27600 deletions
+60 -60
View File
@@ -1,23 +1,23 @@
import React from "react";
import { combineDateTime } from "../utils/dateTimeHelpers";
import React from 'react'
import { combineDateTime } from '../utils/dateTimeHelpers'
/**
* Parameters for all-day toggle hook
*/
export interface AllDayToggleParams {
allday: boolean;
start: string;
end: string;
startDate: string;
startTime: string;
endDate: string;
endTime: string;
setStartTime: (time: string) => void;
setEndTime: (time: string) => void;
setStart: (start: string) => void;
setEnd: (end: string) => void;
setAllDay: (allday: boolean) => void;
onAllDayChange?: (allday: boolean, start: string, end: string) => void;
allday: boolean
start: string
end: string
startDate: string
startTime: string
endDate: string
endTime: string
setStartTime: (time: string) => void
setEndTime: (time: string) => void
setStart: (start: string) => void
setEnd: (end: string) => void
setAllDay: (allday: boolean) => void
onAllDayChange?: (allday: boolean, start: string, end: string) => void
}
/**
@@ -25,12 +25,12 @@ export interface AllDayToggleParams {
*/
export interface AllDayToggleHandlers {
originalTimeRef: React.MutableRefObject<{
start: string;
end: string;
endDate?: string;
fromAllDaySlot?: boolean;
} | null>;
handleAllDayToggle: () => void;
start: string
end: string
endDate?: string
fromAllDaySlot?: boolean
} | null>
handleAllDayToggle: () => void
}
/**
@@ -53,58 +53,58 @@ export function useAllDayToggle(
setStart,
setEnd,
setAllDay,
onAllDayChange,
} = params;
onAllDayChange
} = params
// Store original time before toggling to all-day
const originalTimeRef = React.useRef<{
start: string;
end: string;
endDate?: string;
fromAllDaySlot?: boolean;
} | null>(null);
start: string
end: string
endDate?: string
fromAllDaySlot?: boolean
} | null>(null)
const handleAllDayToggle = React.useCallback(() => {
const newAllDay = !allday;
let newStart = start;
let newEnd = end;
const newAllDay = !allday
let newStart = start
let newEnd = end
if (!newAllDay) {
const hasTimeParts = start.includes("T") && end.includes("T");
const hasTimeParts = start.includes('T') && end.includes('T')
if (!hasTimeParts && !startTime && !endTime) {
const now = new Date();
now.setSeconds(0);
now.setMilliseconds(0);
const nextHour = new Date(now);
nextHour.setMinutes(0);
nextHour.setHours(now.getHours() + 1);
const now = new Date()
now.setSeconds(0)
now.setMilliseconds(0)
const nextHour = new Date(now)
nextHour.setMinutes(0)
nextHour.setHours(now.getHours() + 1)
const startHours = String(nextHour.getHours()).padStart(2, "0");
const startMinutes = String(nextHour.getMinutes()).padStart(2, "0");
const startTimeStr = `${startHours}:${startMinutes}`;
const startHours = String(nextHour.getHours()).padStart(2, '0')
const startMinutes = String(nextHour.getMinutes()).padStart(2, '0')
const startTimeStr = `${startHours}:${startMinutes}`
const endHourDate = new Date(nextHour);
endHourDate.setHours(endHourDate.getHours() + 1);
const endHours = String(endHourDate.getHours()).padStart(2, "0");
const endMinutes = String(endHourDate.getMinutes()).padStart(2, "0");
const endTimeStr = `${endHours}:${endMinutes}`;
const endHourDate = new Date(nextHour)
endHourDate.setHours(endHourDate.getHours() + 1)
const endHours = String(endHourDate.getHours()).padStart(2, '0')
const endMinutes = String(endHourDate.getMinutes()).padStart(2, '0')
const endTimeStr = `${endHours}:${endMinutes}`
const startDateOnly = start.split("T")[0] || startDate;
const endDateOnly = end.split("T")[0] || endDate || startDateOnly;
newStart = combineDateTime(startDateOnly, startTimeStr);
newEnd = combineDateTime(endDateOnly, endTimeStr);
const startDateOnly = start.split('T')[0] || startDate
const endDateOnly = end.split('T')[0] || endDate || startDateOnly
newStart = combineDateTime(startDateOnly, startTimeStr)
newEnd = combineDateTime(endDateOnly, endTimeStr)
setStartTime(startTimeStr);
setEndTime(endTimeStr);
setStartTime(startTimeStr)
setEndTime(endTimeStr)
}
}
if (!onAllDayChange) {
setStart(newStart);
setEnd(newEnd);
setAllDay(newAllDay);
setStart(newStart)
setEnd(newEnd)
setAllDay(newAllDay)
} else {
onAllDayChange(newAllDay, newStart, newEnd);
onAllDayChange(newAllDay, newStart, newEnd)
}
}, [
allday,
@@ -119,11 +119,11 @@ export function useAllDayToggle(
setStart,
setEnd,
setAllDay,
onAllDayChange,
]);
onAllDayChange
])
return {
originalTimeRef,
handleAllDayToggle,
};
handleAllDayToggle
}
}