diff --git a/frontend/components/Domain/Recipe/RecipeActionMenu.vue b/frontend/components/Domain/Recipe/RecipeActionMenu.vue
index d5844e7c72d0..a5fb4370282c 100644
--- a/frontend/components/Domain/Recipe/RecipeActionMenu.vue
+++ b/frontend/components/Domain/Recipe/RecipeActionMenu.vue
@@ -39,26 +39,29 @@
Locked by Owner
-
+
+
+
import { computed, defineComponent, useContext } from "@nuxtjs/composition-api";
import { useUserApi } from "~/composables/api";
-import {UserOut} from "~/types/api-types/user";
+import { UserOut } from "~/types/api-types/user";
export default defineComponent({
props: {
slug: {
@@ -49,19 +49,15 @@ export default defineComponent({
const isFavorite = computed(() => user.value?.favoriteRecipes?.includes(props.slug));
async function toggleFavorite() {
- console.log("Favorited?");
if (!isFavorite.value) {
await api.users.addFavorite(user.value?.id, props.slug);
} else {
await api.users.removeFavorite(user.value?.id, props.slug);
}
$auth.fetchUser();
- };
+ }
return { isFavorite, toggleFavorite };
},
});
-
-
diff --git a/frontend/composables/use-utils.ts b/frontend/composables/use-utils.ts
index 014024a8e47b..fde5504db575 100644
--- a/frontend/composables/use-utils.ts
+++ b/frontend/composables/use-utils.ts
@@ -1,4 +1,18 @@
import { IncomingMessage } from "connect";
+import { useDark } from "@vueuse/core";
+import { useContext } from "@nuxtjs/composition-api";
+
+export const useToggleDarkMode = () => {
+ const isDark = useDark();
+ const { $vuetify } = useContext();
+
+ function toggleDark() {
+ isDark.value = !$vuetify.theme.dark;
+ $vuetify.theme.dark = !$vuetify.theme.dark;
+ }
+
+ return toggleDark;
+};
export const useAsyncKey = function () {
return String(Date.now());
diff --git a/frontend/layouts/default.vue b/frontend/layouts/default.vue
index 96ec4c5ccfd5..bc3a40d3fe51 100644
--- a/frontend/layouts/default.vue
+++ b/frontend/layouts/default.vue
@@ -62,11 +62,11 @@
-
+
diff --git a/frontend/pages/login.vue b/frontend/pages/login.vue
index b07400b7d76f..a173dd381f02 100644
--- a/frontend/pages/login.vue
+++ b/frontend/pages/login.vue
@@ -1,5 +1,12 @@
-
+
Mealie
@@ -7,14 +14,12 @@
@@ -91,16 +96,26 @@
+
+
+
+ {{ $vuetify.theme.dark ? $globals.icons.weatherSunny : $globals.icons.weatherNight }}
+
+ {{ $vuetify.theme.dark ? "Light Mode" : "Dark Mode" }}
+