diff --git a/src/components/ui/switch/Switch.vue b/src/components/ui/switch/Switch.vue
new file mode 100644
index 00000000..5f4ca57f
--- /dev/null
+++ b/src/components/ui/switch/Switch.vue
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/components/ui/switch/index.js b/src/components/ui/switch/index.js
new file mode 100644
index 00000000..924a2d19
--- /dev/null
+++ b/src/components/ui/switch/index.js
@@ -0,0 +1 @@
+export { default as Switch } from './Switch.vue';
diff --git a/src/styles/globals.css b/src/styles/globals.css
index 92ac86b5..251e6686 100644
--- a/src/styles/globals.css
+++ b/src/styles/globals.css
@@ -4,13 +4,15 @@
@custom-variant dark (&:is(.dark *));
:root {
+ --primary: var(--el-color-primary);
+ --ring: var(--el-color-primary);
--background: oklch(1 0 0);
--foreground: oklch(0.145 0 0);
--card: oklch(1 0 0);
--card-foreground: oklch(0.145 0 0);
--popover: oklch(1 0 0);
--popover-foreground: oklch(0.145 0 0);
- --primary: oklch(0.205 0 0);
+ /* --primary: oklch(0.205 0 0); */
--primary-foreground: oklch(0.985 0 0);
--secondary: oklch(0.97 0 0);
--secondary-foreground: oklch(0.205 0 0);
@@ -22,7 +24,7 @@
--destructive-foreground: oklch(0.577 0.245 27.325);
--border: oklch(0.922 0 0);
--input: oklch(0.922 0 0);
- --ring: oklch(0.708 0 0);
+ /* --ring: oklch(0.708 0 0); */
--chart-1: oklch(0.646 0.222 41.116);
--chart-2: oklch(0.6 0.118 184.704);
--chart-3: oklch(0.398 0.07 227.392);
@@ -40,13 +42,15 @@
}
.dark {
+ --primary: var(--el-color-primary);
+ --ring: var(--el-color-primary);
--background: oklch(0.145 0 0);
--foreground: oklch(0.985 0 0);
--card: oklch(0.145 0 0);
--card-foreground: oklch(0.985 0 0);
--popover: oklch(0.145 0 0);
--popover-foreground: oklch(0.985 0 0);
- --primary: oklch(0.985 0 0);
+ /* --primary: oklch(0.985 0 0); */
--primary-foreground: oklch(0.205 0 0);
--secondary: oklch(0.269 0 0);
--secondary-foreground: oklch(0.985 0 0);
@@ -58,7 +62,7 @@
--destructive-foreground: oklch(0.637 0.237 25.331);
--border: oklch(0.269 0 0);
--input: oklch(0.269 0 0);
- --ring: oklch(0.439 0 0);
+ /* --ring: oklch(0.439 0 0); */
--chart-1: oklch(0.488 0.243 264.376);
--chart-2: oklch(0.696 0.17 162.48);
--chart-3: oklch(0.769 0.188 70.08);
diff --git a/src/views/Charts/components/InstanceActivity.vue b/src/views/Charts/components/InstanceActivity.vue
index a4013104..e56f9a06 100644
--- a/src/views/Charts/components/InstanceActivity.vue
+++ b/src/views/Charts/components/InstanceActivity.vue
@@ -49,30 +49,27 @@
{{ t('view.charts.instance_activity.settings.show_detail') }}
- changeIsDetailInstanceVisible(value, () => handleSettingsChange())
- ">
-
+ " />
{{ t('view.charts.instance_activity.settings.show_solo_instance') }}
- changeIsSoloInstanceVisible(value, () => handleSettingsChange())
- ">
-
+ " />
{{ t('view.charts.instance_activity.settings.show_no_friend_instance') }}
- changeIsNoFriendInstanceVisible(value, () => handleSettingsChange())
- ">
-
+ " />
@@ -139,6 +136,7 @@
import { Popover, PopoverContent, PopoverTrigger } from '../../../components/ui/popover';
import { useAppearanceSettingsStore, useFriendStore, useUserStore } from '../../../stores';
import { parseLocation, timeToText } from '../../../shared/utils';
+ import { Switch } from '../../../components/ui/switch';
import { useActivityDataProcessor } from '../composables/useActivityDataProcessor';
import { useChartHelpers } from '../composables/useChartHelpers';
import { useDateNavigation } from '../composables/useDateNavigation';
diff --git a/src/views/Favorites/FavoritesAvatar.vue b/src/views/Favorites/FavoritesAvatar.vue
index 0ec5d913..5caf11ad 100644
--- a/src/views/Favorites/FavoritesAvatar.vue
+++ b/src/views/Favorites/FavoritesAvatar.vue
@@ -339,10 +339,7 @@
{{ t('view.favorite.edit_mode') }}
-
+
@@ -496,6 +493,7 @@
import { Popover, PopoverContent, PopoverTrigger } from '../../components/ui/popover';
import { avatarRequest, favoriteRequest } from '../../api';
import { Badge } from '../../components/ui/badge';
+ import { Switch } from '../../components/ui/switch';
import { useFavoritesCardScaling } from './composables/useFavoritesCardScaling.js';
import AvatarExportDialog from './dialogs/AvatarExportDialog.vue';
diff --git a/src/views/Favorites/FavoritesFriend.vue b/src/views/Favorites/FavoritesFriend.vue
index ffe7b1e6..a46772c3 100644
--- a/src/views/Favorites/FavoritesFriend.vue
+++ b/src/views/Favorites/FavoritesFriend.vue
@@ -180,10 +180,7 @@
{{ t('view.favorite.edit_mode') }}
-
+
@@ -287,6 +284,7 @@
import { Popover, PopoverContent, PopoverTrigger } from '../../components/ui/popover';
import { useAppearanceSettingsStore, useFavoriteStore, useUserStore } from '../../stores';
import { Badge } from '../../components/ui/badge';
+ import { Switch } from '../../components/ui/switch';
import { favoriteRequest } from '../../api';
import { useFavoritesCardScaling } from './composables/useFavoritesCardScaling.js';
import { userImage } from '../../shared/utils';
diff --git a/src/views/Favorites/FavoritesWorld.vue b/src/views/Favorites/FavoritesWorld.vue
index caafab33..391a7ccf 100644
--- a/src/views/Favorites/FavoritesWorld.vue
+++ b/src/views/Favorites/FavoritesWorld.vue
@@ -286,7 +286,7 @@
{{ t('view.favorite.edit_mode') }}
-
+
@@ -412,6 +412,7 @@
import { useAppearanceSettingsStore, useFavoriteStore, useWorldStore } from '../../stores';
import { favoriteRequest, worldRequest } from '../../api';
import { Badge } from '../../components/ui/badge';
+ import { Switch } from '../../components/ui/switch';
import { useFavoritesCardScaling } from './composables/useFavoritesCardScaling.js';
import FavoritesWorldItem from './components/FavoritesWorldItem.vue';
diff --git a/src/views/Feed/Feed.vue b/src/views/Feed/Feed.vue
index 1c46ce02..8f6a8da8 100644
--- a/src/views/Feed/Feed.vue
+++ b/src/views/Feed/Feed.vue
@@ -11,10 +11,7 @@
-
+
-
+
{{ t('view.friend_list.bulk_unfriend') }}
-
+ @update:modelValue="toggleFriendsListBulkUnfriendMode" />
@@ -284,6 +281,7 @@
} from '../../shared/utils';
import { useAppearanceSettingsStore, useFriendStore, useSearchStore, useUserStore } from '../../stores';
import { friendRequest, userRequest } from '../../api';
+ import { Switch } from '../../components/ui/switch';
import removeConfusables, { removeWhitespace } from '../../service/confusables';
import { router } from '../../plugin/router';
import { useTableHeight } from '../../composables/useTableHeight';
diff --git a/src/views/FriendsLocations/FriendsLocations.vue b/src/views/FriendsLocations/FriendsLocations.vue
index 1566a4de..c750696a 100644
--- a/src/views/FriendsLocations/FriendsLocations.vue
+++ b/src/views/FriendsLocations/FriendsLocations.vue
@@ -24,7 +24,7 @@
{{
t('view.friends_locations.separate_same_instance_friends')
}}
-
+
{{ t('view.friends_locations.scale') }}
@@ -170,6 +170,7 @@
import { useI18n } from 'vue-i18n';
import { Popover, PopoverContent, PopoverTrigger } from '../../components/ui/popover';
+ import { Switch } from '../../components/ui/switch';
import { getFriendsLocations } from '../../shared/utils/location.js';
import { useFriendStore } from '../../stores';
diff --git a/src/views/GameLog/GameLog.vue b/src/views/GameLog/GameLog.vue
index c7d76256..fa73111a 100644
--- a/src/views/GameLog/GameLog.vue
+++ b/src/views/GameLog/GameLog.vue
@@ -11,10 +11,7 @@
-
+