From 3dd1cf7ed9b28c899e3dfda7d12b10b0431e0acb Mon Sep 17 00:00:00 2001 From: Manuel Dublanc <19774382+manud99@users.noreply.github.com> Date: Sat, 2 Sep 2023 11:23:58 +0200 Subject: [PATCH] Automatically create subjects when fetching time entries. --- src/google/query.ts | 11 ++++++++-- src/google/utils.ts | 1 - src/modals/EditSubjectModal.vue | 4 ++-- src/pages/Dashboard.vue | 38 ++++++++++++++++++++++++++++++--- src/pages/Statistics.vue | 5 ++--- src/utils/subjects.ts | 22 ++++++++++++++----- src/utils/timeEntries.ts | 2 -- 7 files changed, 65 insertions(+), 18 deletions(-) diff --git a/src/google/query.ts b/src/google/query.ts index d9320d4..e7f88c3 100644 --- a/src/google/query.ts +++ b/src/google/query.ts @@ -18,14 +18,19 @@ export async function fetchUserInfo(): Promise { const response = await makeRequest( "https://people.googleapis.com/v1/people/me", "GET", - { personFields: "names,emailAddresses" }, + { personFields: "names,emailAddresses", fields: "names(displayName),emailAddresses(value)" }, null ); return response?.result || null; } export async function fetchCalendars(): Promise { - const response = await makeRequest("https://www.googleapis.com/calendar/v3/users/me/calendarList", "GET", {}, null); + const response = await makeRequest( + "https://www.googleapis.com/calendar/v3/users/me/calendarList", + "GET", + { fields: "items(id,summary)" }, + null + ); return response ? response.result.items : []; } @@ -39,6 +44,8 @@ export async function fetchEvents(calendarId: string, start: string, end: string timeZone: "UTC", singleEvents: true, orderBy: "startTime", + fields: "items(id,summary,start,end)", + maxResults: 2500, }, null ); diff --git a/src/google/utils.ts b/src/google/utils.ts index 1e58cfe..81bafbf 100644 --- a/src/google/utils.ts +++ b/src/google/utils.ts @@ -22,7 +22,6 @@ export function signOut() { } const accessToken = window.gapi.auth.getToken().access_token; - console.log("accessToken", accessToken); if (!accessToken) return; google.accounts.oauth2.revoke(window.gapi.auth.getToken().access_token, () => { diff --git a/src/modals/EditSubjectModal.vue b/src/modals/EditSubjectModal.vue index ef60e5b..c337adc 100644 --- a/src/modals/EditSubjectModal.vue +++ b/src/modals/EditSubjectModal.vue @@ -37,8 +37,8 @@ const emit = defineEmits<{ watch(show, async (val) => { if (!val) return; - name.value = subject.value ? subject.value?.name! : ""; - color.value = subject.value ? subject.value?.color!.toString(10) : ""; + name.value = subject.value ? subject.value.name : ""; + color.value = subject.value && subject.value.color ? subject.value.color.toString(10) : ""; isActive.value = subject.value ? subject.value?.isActive! : false; }); diff --git a/src/pages/Dashboard.vue b/src/pages/Dashboard.vue index d301673..bc8dd22 100644 --- a/src/pages/Dashboard.vue +++ b/src/pages/Dashboard.vue @@ -1,7 +1,7 @@