From da933c04d76597baee231a362051ecda9bbab95b Mon Sep 17 00:00:00 2001 From: April Hall Date: Wed, 5 Feb 2025 19:07:31 -0500 Subject: [PATCH] feat: Dark/Light mode switcher --- bun.lockb | Bin 170772 -> 171183 bytes package.json | 5 +++-- src/lib/components/mainLayout.svelte | 2 ++ src/lib/components/message.svelte | 6 +++--- src/lib/components/modeSwitcher.svelte | 12 ++++++++++++ src/routes/+layout.svelte | 2 ++ src/routes/+page.svelte | 2 +- 7 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 src/lib/components/modeSwitcher.svelte diff --git a/bun.lockb b/bun.lockb index 66ef4ee3c5e9e869f62d11e659367b6c870b34d3..a5ba6a2856d5340234e886120cee6fe8004e2ee3 100755 GIT binary patch delta 28712 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 import MessagesSquare from 'lucide-svelte/icons/messages-square'; + import ModeSwitcher from './modeSwitcher.svelte'; import Channel from './channel.svelte'; import type { Snippet } from 'svelte'; @@ -19,6 +20,7 @@ SVChat +