mirror of
https://github.com/vrcx-team/VRCX.git
synced 2026-04-06 00:32:02 +02:00
Clean up treeData
This commit is contained in:
@@ -34,6 +34,7 @@ namespace VRCX
|
||||
public bool VrcClosedGracefully;
|
||||
private readonly ConcurrentQueue<string> m_LogQueue = new ConcurrentQueue<string>(); // for electron
|
||||
private static readonly Regex CleanId = new("[^a-zA-Z0-9_\\-~:()]", RegexOptions.Compiled);
|
||||
private static readonly Regex CleanLocation = new("[/]", RegexOptions.Compiled);
|
||||
|
||||
// NOTE
|
||||
// FileSystemWatcher() is unreliable
|
||||
@@ -373,7 +374,7 @@ namespace VRCX
|
||||
return true;
|
||||
|
||||
var location = line.Substring(lineOffset);
|
||||
location = CleanId.Replace(location, string.Empty);
|
||||
location = CleanLocation.Replace(location, string.Empty);
|
||||
|
||||
AppendLog(new[]
|
||||
{
|
||||
@@ -451,7 +452,7 @@ namespace VRCX
|
||||
return true;
|
||||
|
||||
var locationDestination = line.Substring(lineOffset);
|
||||
logContext.LocationDestination = CleanId.Replace(locationDestination, string.Empty);
|
||||
logContext.LocationDestination = CleanLocation.Replace(locationDestination, string.Empty);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -1106,8 +1106,8 @@
|
||||
<Download />
|
||||
</Button>
|
||||
<vue-json-pretty
|
||||
:key="groupDialog.treeData?.group?.id"
|
||||
:data="groupDialog.treeData"
|
||||
:key="treeData?.group?.id"
|
||||
:data="treeData"
|
||||
:deep="2"
|
||||
:theme="isDarkMode ? 'dark' : 'light'"
|
||||
show-icon />
|
||||
@@ -1242,6 +1242,7 @@
|
||||
const groupDialogGalleryCurrentName = ref('0');
|
||||
const groupDialogTabCurrentName = ref('0');
|
||||
const isGroupGalleryLoading = ref(false);
|
||||
const treeData = ref({});
|
||||
|
||||
const groupDialogMemberSortValue = computed({
|
||||
get() {
|
||||
@@ -1817,17 +1818,13 @@
|
||||
|
||||
function refreshGroupDialogTreeData() {
|
||||
const D = groupDialog.value;
|
||||
const treeData = {
|
||||
treeData.value = {
|
||||
group: formatJsonVars(D.ref),
|
||||
posts: D.posts,
|
||||
instances: D.instances,
|
||||
members: D.members,
|
||||
galleries: D.galleries
|
||||
};
|
||||
updateGroupDialogData({
|
||||
...groupDialog.value,
|
||||
treeData
|
||||
});
|
||||
}
|
||||
|
||||
async function loadAllGroupMembers() {
|
||||
|
||||
@@ -1191,8 +1191,8 @@
|
||||
<Download />
|
||||
</Button>
|
||||
<vue-json-pretty
|
||||
:key="userDialog.treeData?.id"
|
||||
:data="userDialog.treeData"
|
||||
:key="treeData?.id"
|
||||
:data="treeData"
|
||||
:deep="2"
|
||||
:theme="isDarkMode ? 'dark' : 'light'"
|
||||
show-icon />
|
||||
@@ -1313,6 +1313,7 @@
|
||||
import InstanceActionBar from '../../InstanceActionBar.vue';
|
||||
import SendInviteDialog from '../InviteDialog/SendInviteDialog.vue';
|
||||
import UserSummaryHeader from './UserSummaryHeader.vue';
|
||||
import { formatJsonVars } from '../../../shared/utils/base/ui';
|
||||
|
||||
const BioDialog = defineAsyncComponent(() => import('./BioDialog.vue'));
|
||||
const LanguageDialog = defineAsyncComponent(() => import('./LanguageDialog.vue'));
|
||||
@@ -1357,7 +1358,6 @@
|
||||
showUserDialog,
|
||||
sortUserDialogAvatars,
|
||||
refreshUserDialogAvatars,
|
||||
refreshUserDialogTreeData,
|
||||
showSendBoopDialog,
|
||||
toggleSharedConnectionsOptOut
|
||||
} = useUserStore();
|
||||
@@ -1466,6 +1466,7 @@
|
||||
const isEditNoteAndMemoDialogVisible = ref(false);
|
||||
const vrchatCredit = ref(null);
|
||||
const mutualFriendsError = ref(false);
|
||||
const treeData = ref({});
|
||||
|
||||
const userDialogAvatars = computed(() => {
|
||||
const { avatars, avatarReleaseStatus } = userDialog.value;
|
||||
@@ -1518,6 +1519,18 @@
|
||||
return t('dialog.user.status.offline');
|
||||
}
|
||||
|
||||
function refreshUserDialogTreeData() {
|
||||
const D = userDialog.value;
|
||||
if (D.id === currentUser.value.id) {
|
||||
treeData.value = formatJsonVars({
|
||||
...currentUser.value,
|
||||
...D.ref
|
||||
});
|
||||
return;
|
||||
}
|
||||
treeData.value = formatJsonVars(D.ref);
|
||||
}
|
||||
|
||||
function handleUserDialogTab(tabName) {
|
||||
userDialog.value.lastActiveTab = tabName;
|
||||
const userId = userDialog.value.id;
|
||||
|
||||
@@ -49,7 +49,6 @@ export const useGroupStore = defineStore('Group', () => {
|
||||
activeTab: 'Info',
|
||||
lastActiveTab: 'Info',
|
||||
isGetGroupDialogGroupLoading: false,
|
||||
treeData: {},
|
||||
id: '',
|
||||
inGroup: false,
|
||||
ownerDisplayName: '',
|
||||
@@ -147,7 +146,6 @@ export const useGroupStore = defineStore('Group', () => {
|
||||
D.id = groupId;
|
||||
D.inGroup = false;
|
||||
D.ownerDisplayName = '';
|
||||
D.treeData = {};
|
||||
D.announcement = {};
|
||||
D.posts = [];
|
||||
D.postsFiltered = [];
|
||||
|
||||
@@ -31,7 +31,6 @@ import {
|
||||
import { processBulk, request } from '../service/request';
|
||||
import { AppDebug } from '../service/appConfig';
|
||||
import { database } from '../service/database';
|
||||
import { formatJsonVars } from '../shared/utils/base/ui';
|
||||
import { useAppearanceSettingsStore } from './settings/appearance';
|
||||
import { useAuthStore } from './auth';
|
||||
import { useAvatarStore } from './avatar';
|
||||
@@ -236,7 +235,6 @@ export const useUserStore = defineStore('User', () => {
|
||||
},
|
||||
avatarSorting: 'update',
|
||||
avatarReleaseStatus: 'all',
|
||||
treeData: {},
|
||||
memo: '',
|
||||
$avatarInfo: {
|
||||
ownerId: '',
|
||||
@@ -732,8 +730,6 @@ export const useUserStore = defineStore('User', () => {
|
||||
} else if (D.ref.friendRequestStatus === 'outgoing') {
|
||||
D.outgoingRequest = true;
|
||||
}
|
||||
// refresh user dialog JSON tab
|
||||
refreshUserDialogTreeData();
|
||||
}
|
||||
if (hasPropChanged) {
|
||||
if (
|
||||
@@ -1239,18 +1235,6 @@ export const useUserStore = defineStore('User', () => {
|
||||
});
|
||||
}
|
||||
|
||||
function refreshUserDialogTreeData() {
|
||||
const D = userDialog.value;
|
||||
if (D.id === currentUser.value.id) {
|
||||
D.treeData = formatJsonVars({
|
||||
...currentUser.value,
|
||||
...D.ref
|
||||
});
|
||||
return;
|
||||
}
|
||||
D.treeData = formatJsonVars(D.ref);
|
||||
}
|
||||
|
||||
async function lookupUser(ref) {
|
||||
let ctx;
|
||||
if (ref.userId) {
|
||||
@@ -2064,7 +2048,6 @@ export const useUserStore = defineStore('User', () => {
|
||||
applyUserDialogLocation,
|
||||
sortUserDialogAvatars,
|
||||
refreshUserDialogAvatars,
|
||||
refreshUserDialogTreeData,
|
||||
lookupUser,
|
||||
updateAutoStateChange,
|
||||
addCustomTag,
|
||||
|
||||
Reference in New Issue
Block a user