diff --git a/resources/js/Components/Dashboard/RecentlyTrackedTasksCardEntry.vue b/resources/js/Components/Dashboard/RecentlyTrackedTasksCardEntry.vue index 5b863ef4..ff3d2182 100644 --- a/resources/js/Components/Dashboard/RecentlyTrackedTasksCardEntry.vue +++ b/resources/js/Components/Dashboard/RecentlyTrackedTasksCardEntry.vue @@ -4,8 +4,8 @@ import TimeTrackerStartStop from '@/packages/ui/src/TimeTrackerStartStop.vue'; import { useProjectsStore } from '@/utils/useProjects'; import { storeToRefs } from 'pinia'; import { computed } from 'vue'; -import dayjs from 'dayjs'; import { useCurrentTimeEntryStore } from '@/utils/useCurrentTimeEntry'; +import { getDayJsInstance } from '@/packages/ui/src/utils/time'; const props = defineProps<{ title: string; @@ -20,16 +20,16 @@ const project = computed(() => { }); const { currentTimeEntry } = storeToRefs(useCurrentTimeEntryStore()); -const { stopTimer, startTimer } = useCurrentTimeEntryStore(); +const { setActiveState } = useCurrentTimeEntryStore(); async function startTaskTimer() { if (currentTimeEntry.value.id) { - await stopTimer(); + await setActiveState(true); } currentTimeEntry.value.project_id = props.project_id; currentTimeEntry.value.task_id = props.task_id; - currentTimeEntry.value.start = dayjs().utc().format(); - await startTimer(); + currentTimeEntry.value.start = getDayJsInstance().utc().format(); + await setActiveState(true); useCurrentTimeEntryStore().fetchCurrentTimeEntry(); } diff --git a/resources/js/Pages/Time.vue b/resources/js/Pages/Time.vue index 65188aac..70d0bdbc 100644 --- a/resources/js/Pages/Time.vue +++ b/resources/js/Pages/Time.vue @@ -42,14 +42,14 @@ const loadMoreContainer = ref(null); const isLoadMoreVisible = useElementVisibility(loadMoreContainer); const currentTimeEntryStore = useCurrentTimeEntryStore(); const { currentTimeEntry } = storeToRefs(currentTimeEntryStore); -const { stopTimer } = currentTimeEntryStore; +const { setActiveState } = currentTimeEntryStore; const { tags } = storeToRefs(useTagsStore()); async function startTimeEntry( timeEntry: Omit ) { if (currentTimeEntry.value.id) { - await stopTimer(); + await setActiveState(false); } await createTimeEntry(timeEntry); fetchTimeEntries(); diff --git a/resources/js/packages/ui/src/TimeEntry/TimeEntryGroupedTable.vue b/resources/js/packages/ui/src/TimeEntry/TimeEntryGroupedTable.vue index 4a0e8db5..13556d28 100644 --- a/resources/js/packages/ui/src/TimeEntry/TimeEntryGroupedTable.vue +++ b/resources/js/packages/ui/src/TimeEntry/TimeEntryGroupedTable.vue @@ -17,7 +17,6 @@ import { import TimeEntryAggregateRow from '@/packages/ui/src/TimeEntry/TimeEntryAggregateRow.vue'; import TimeEntryRowHeading from '@/packages/ui/src/TimeEntry/TimeEntryRowHeading.vue'; import TimeEntryRow from '@/packages/ui/src/TimeEntry/TimeEntryRow.vue'; -import dayjs from 'dayjs'; import type { TimeEntriesGroupedByType } from '@/types/time-entries'; const props = defineProps<{ @@ -106,7 +105,7 @@ function startTimeEntryFromExisting(entry: TimeEntry) { props.createTimeEntry({ project_id: entry.project_id, task_id: entry.task_id, - start: dayjs().utc().format(), + start: getDayJsInstance().utc().format(), end: null, billable: entry.billable, description: entry.description, diff --git a/resources/js/utils/useCurrentTimeEntry.ts b/resources/js/utils/useCurrentTimeEntry.ts index 4bdd24f7..d401a9fd 100644 --- a/resources/js/utils/useCurrentTimeEntry.ts +++ b/resources/js/utils/useCurrentTimeEntry.ts @@ -205,8 +205,6 @@ export const useCurrentTimeEntryStore = defineStore('currentTimeEntry', () => { return { currentTimeEntry, fetchCurrentTimeEntry, - startTimer, - stopTimer, updateTimer, isActive, startLiveTimer,