refactor utils

This commit is contained in:
pa
2026-03-10 20:08:16 +09:00
parent ff1529920b
commit 1dfd0bf54c
40 changed files with 435 additions and 275 deletions

View File

@@ -147,7 +147,7 @@
import { useVirtualizer } from '@tanstack/vue-virtual';
import { Popover, PopoverContent, PopoverTrigger } from '../../components/ui/popover';
import { useAppearanceSettingsStore, useFavoriteStore, useFriendStore } from '../../stores';
import { useAppearanceSettingsStore, useFavoriteStore, useFriendStore, useLocationStore } from '../../stores';
import { Slider } from '../../components/ui/slider';
import { Switch } from '../../components/ui/switch';
import { getFriendsLocations } from '../../shared/utils/location.js';
@@ -175,6 +175,9 @@
const favoriteStore = useFavoriteStore();
const { favoriteFriendGroups, groupedByGroupKeyFavoriteFriends, localFriendFavorites } = storeToRefs(favoriteStore);
const locationStore = useLocationStore();
const { lastLocation } = storeToRefs(locationStore);
const collapsedGroups = reactive(new Set());
const SEGMENTED_BASE_OPTIONS = [
@@ -319,7 +322,7 @@
.map((group, index) => {
if (!Array.isArray(group) || group.length === 0) return null;
const friends = group;
const instanceId = getFriendsLocations(friends) || `instance-${index + 1}`;
const instanceId = getFriendsLocations(friends, lastLocation.value) || `instance-${index + 1}`;
return {
instanceId: String(instanceId),
friends

View File

@@ -75,13 +75,14 @@
import { toast } from 'vue-sonner';
import { useI18n } from 'vue-i18n';
import { isRealInstance, parseLocation, userImage, userStatusClass } from '../../../shared/utils';
import { isRealInstance, parseLocation } from '../../../shared/utils';
import { useGameStore, useLaunchStore, useLocationStore, useUserStore } from '../../../stores';
import { instanceRequest, notificationRequest, queryRequest } from '../../../api';
import { checkCanInvite, checkCanInviteSelf } from '../../../shared/utils/invite.js';
import { useInviteChecks } from '../../../composables/useInviteChecks';
import { useUserDisplay } from '../../../composables/useUserDisplay';
import Location from '../../../components/Location.vue';
import { showUserDialog } from '../../../coordinators/userCoordinator';
import { showUserDialog } from '../../../coordinators/userCoordinator';
const { t } = useI18n();
const { showSendBoopDialog } = useUserStore();
@@ -89,6 +90,8 @@ import { showUserDialog } from '../../../coordinators/userCoordinator';
const { lastLocation, lastLocationDestination } = storeToRefs(useLocationStore());
const { isGameRunning } = storeToRefs(useGameStore());
const { currentUser } = storeToRefs(useUserStore());
const { checkCanInvite, checkCanInviteSelf } = useInviteChecks();
const { userImage, userStatusClass } = useUserDisplay();
const props = defineProps({
friend: {