52 lines
2.1 KiB
JavaScript
52 lines
2.1 KiB
JavaScript
/**
|
|
* Global application state
|
|
*/
|
|
|
|
// Modal state
|
|
export let currentEditingId = null;
|
|
export let datePicker = null;
|
|
export let startTimePicker = null;
|
|
export let endTimePicker = null;
|
|
export let filterFromPicker = null;
|
|
export let filterToPicker = null;
|
|
|
|
// Timer state
|
|
export let timerInterval = null;
|
|
export let timerStartTime = null;
|
|
export let timerPausedDuration = 0; // Total paused time in seconds
|
|
export let isPaused = false;
|
|
export let pauseTimeout = null;
|
|
export let currentEntryId = null; // ID of today's entry being timed
|
|
|
|
// Current month display state
|
|
export let displayYear = new Date().getFullYear();
|
|
export let displayMonth = new Date().getMonth(); // 0-11
|
|
|
|
// Bulk edit state
|
|
export let bulkEditMode = false;
|
|
export let selectedEntries = new Set();
|
|
|
|
// Setters for state mutations
|
|
export function setCurrentEditingId(id) { currentEditingId = id; }
|
|
export function setDatePicker(picker) { datePicker = picker; }
|
|
export function setStartTimePicker(picker) { startTimePicker = picker; }
|
|
export function setEndTimePicker(picker) { endTimePicker = picker; }
|
|
export function setFilterFromPicker(picker) { filterFromPicker = picker; }
|
|
export function setFilterToPicker(picker) { filterToPicker = picker; }
|
|
|
|
export function setTimerInterval(interval) { timerInterval = interval; }
|
|
export function setTimerStartTime(time) { timerStartTime = time; }
|
|
export function setTimerPausedDuration(duration) { timerPausedDuration = duration; }
|
|
export function setIsPaused(paused) { isPaused = paused; }
|
|
export function setPauseTimeout(timeout) { pauseTimeout = timeout; }
|
|
export function setCurrentEntryId(id) { currentEntryId = id; }
|
|
|
|
export function setDisplayYear(year) { displayYear = year; }
|
|
export function setDisplayMonth(month) { displayMonth = month; }
|
|
|
|
export function setBulkEditMode(mode) { bulkEditMode = mode; }
|
|
export function clearSelectedEntries() { selectedEntries.clear(); }
|
|
export function addSelectedEntry(id) { selectedEntries.add(id); }
|
|
export function removeSelectedEntry(id) { selectedEntries.delete(id); }
|
|
export function hasSelectedEntry(id) { return selectedEntries.has(id); }
|