feat: implement day detail panel for calendar

- Introduced a new `dayDetail.js` module to manage the day detail panel functionality, allowing users to view detailed information about duties and events for each calendar day.
- Enhanced the calendar rendering in `calendar.js` to include visual indicators for duties and events, improving user interaction and experience.
- Updated CSS in `style.css` to style the day detail panel and its components, ensuring a responsive design for both desktop and mobile views.
- Refactored `hints.js` to export the `getDutyMarkerRows` function, facilitating better integration with the new day detail features.
- Added localization support for the day detail panel in `i18n.js`, including new translations for close button and event titles.
- Enhanced the initialization process in `main.js` to set up the day detail panel on application load.
This commit is contained in:
2026-02-19 16:23:46 +03:00
parent 4c2d95e776
commit b60111462a
6 changed files with 501 additions and 61 deletions

View File

@@ -23,6 +23,7 @@ import {
calendarEventsByDate,
renderCalendar
} from "./calendar.js";
import { initDayDetail } from "./dayDetail.js";
import { renderDutyList } from "./dutyList.js";
import {
firstDayOfMonth,
@@ -244,6 +245,7 @@ function bindStickyScrollShadow() {
runWhenReady(() => {
requireTelegramOrLocalhost(() => {
bindStickyScrollShadow();
initDayDetail();
loadMonth();
});
});