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

@@ -77,7 +77,7 @@
import Timer from '@/components/Timer.vue';
import { useAppearanceSettingsStore, useFriendStore, useUserStore } from '../../../stores';
import { userImage, userStatusClass } from '../../../shared/utils';
import { useUserDisplay } from '../../../composables/useUserDisplay';
import '@/styles/status-icon.css';
import { showUserDialog } from '../../../coordinators/userCoordinator';
@@ -90,6 +90,7 @@ import { confirmDeleteFriend } from '../../../coordinators/friendRelationshipCoo
const { hideNicknames } = storeToRefs(useAppearanceSettingsStore());
const { isRefreshFriendsLoading, allFavoriteFriendIds } = storeToRefs(useFriendStore());
const { userImage, userStatusClass } = useUserDisplay();
const { t } = useI18n();

View File

@@ -204,9 +204,10 @@
useUserStore
} from '../../../stores';
import { buildFriendRow, buildInstanceHeaderRow, buildToggleRow, estimateRowSize } from '../friendsSidebarUtils';
import { getFriendsSortFunction, isRealInstance, userImage, userStatusClass } from '../../../shared/utils';
import { getFriendsSortFunction, isRealInstance } from '../../../shared/utils';
import { instanceRequest, notificationRequest, queryRequest, userRequest } from '../../../api';
import { checkCanInvite, checkCanInviteSelf } from '../../../shared/utils/invite.js';
import { useInviteChecks } from '../../../composables/useInviteChecks';
import { useUserDisplay } from '../../../composables/useUserDisplay';
import { getFriendsLocations } from '../../../shared/utils/location.js';
import { parseLocation } from '../../../shared/utils';
@@ -246,6 +247,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 isFriendsGroupMe = ref(true);
const isVIPFriends = ref(true);
@@ -476,7 +479,7 @@ import { showUserDialog } from '../../../coordinators/userCoordinator';
if (!friendArr || !friendArr.length) return;
const groupKey = friendArr?.[0]?.ref?.$location?.tag ?? `group-${groupIndex}`;
rows.push(
buildInstanceHeaderRow(getFriendsLocations(friendArr), friendArr.length, `instance:${groupKey}`)
buildInstanceHeaderRow(getFriendsLocations(friendArr, lastLocation.value), friendArr.length, `instance:${groupKey}`)
);
friendArr.forEach((friend, idx) => {
rows.push(

View File

@@ -95,7 +95,8 @@
ContextMenuTrigger
} from '../../../components/ui/context-menu';
import { buildGroupHeaderRow, buildGroupItemRow, estimateGroupRowSize, getGroupId } from '../groupsSidebarUtils';
import { checkCanInviteSelf, convertFileUrlToImageUrl, parseLocation } from '../../../shared/utils';
import { convertFileUrlToImageUrl, parseLocation } from '../../../shared/utils';
import { useInviteChecks } from '../../../composables/useInviteChecks';
import { useAppearanceSettingsStore, useGroupStore, useLaunchStore } from '../../../stores';
import { instanceRequest } from '../../../api';
@@ -108,6 +109,7 @@
const { isAgeGatedInstancesVisible } = storeToRefs(useAppearanceSettingsStore());
const { showGroupDialog, sortGroupInstancesByInGame } = useGroupStore();
const { groupInstances } = storeToRefs(useGroupStore());
const { checkCanInviteSelf } = useInviteChecks();
const groupInstancesCfg = ref({});
const scrollViewportRef = ref(null);

View File

@@ -257,7 +257,8 @@
import { useGameStore, useGroupStore, useLocationStore, useNotificationStore, useUserStore } from '../../../stores';
import { showGroupDialog } from '../../../coordinators/groupCoordinator';
import { showUserDialog } from '../../../coordinators/userCoordinator';
import { checkCanInvite, userImage } from '../../../shared/utils';
import { useInviteChecks } from '../../../composables/useInviteChecks';
import { useUserDisplay } from '../../../composables/useUserDisplay';
import Location from '../../../components/Location.vue';
@@ -275,6 +276,8 @@
const { lastLocation } = storeToRefs(useLocationStore());
const { isGameRunning } = storeToRefs(useGameStore());
const { openNotificationLink, isNotificationExpired } = useNotificationStore();
const { checkCanInvite } = useInviteChecks();
const { userImage } = useUserDisplay();
const senderName = computed(() => {
const n = props.notification;