This commit is contained in:
Natsumi
2022-05-05 18:17:09 +12:00
parent 6eb35afe99
commit d72f4170b8
+97 -88
View File
@@ -905,6 +905,10 @@ html
.x-container(v-show="$refs.menu && $refs.menu.activeIndex === 'settings'") .x-container(v-show="$refs.menu && $refs.menu.activeIndex === 'settings'")
div.options-container(style="margin-top:0") div.options-container(style="margin-top:0")
span.header Settings span.header Settings
el-tabs(type="card" style="margin-top:10px")
el-tab-pane(label="General")
div.options-container(style="margin-top:0")
span.header General
.x-friend-list(style="margin-top:10px") .x-friend-list(style="margin-top:10px")
.x-friend-item(style="cursor:default") .x-friend-item(style="cursor:default")
.detail .detail
@@ -935,7 +939,17 @@ html
el-radio-button(label="Notify") el-radio-button(label="Notify")
el-radio-button(label="Auto Download") el-radio-button(label="Auto Download")
el-radio-button(label="Auto Install") el-radio-button(label="Auto Install")
div.options-container div.options-container(style="margin-top:45px;border-top:1px solid #eee;padding-top:30px")
span.header Legal Notice
div.options-container-item
p © 2019-2022 #[a(href="https://github.com/pypy-vrc" target="_blank") pypy] (mina#5656)
p VRCX is an assistant application for provide information about manage friendship. this application uses unofficial VRChat API (VRCSDK).
p VRCX isn't endorsed by VRChat and doesn't reflect the views or opinions of VRChat or anyone officially involved in producing or managing VRChat. VRChat is trademark of VRChat Inc. VRChat © VRChat Inc.
p pypy is not responsible for any problems caused by VRCX. Use at your own risk!
div.options-container-item
el-button(@click="ossDialog = true" size="small") Open Source Software Notice
el-tab-pane(label="Appearance")
div.options-container(style="margin-top:0")
span.header Appearance span.header Appearance
div.options-container-item div.options-container-item
span.name Theme mode span.name Theme mode
@@ -1006,41 +1020,68 @@ html
el-color-picker(v-model="trustColor.trusted" @change="updatetrustColor" size="mini" :predefine="['#ff7b42']") el-color-picker(v-model="trustColor.trusted" @change="updatetrustColor" size="mini" :predefine="['#ff7b42']")
span.color-picker(slot="trigger" class="x-tag-trusted") Known User span.color-picker(slot="trigger" class="x-tag-trusted") Known User
div div
el-color-picker(v-model="trustColor.veteran" @change="updatetrustColor" size="mini" :predefine="['#b18fff', '#8143e6']") el-color-picker(v-model="trustColor.veteran" @change="updatetrustColor" size="mini" :predefine="['#b18fff', '#8143e6', '#ff69b4', '#b52626', '#ffd000', '#abcdef']")
span.color-picker(slot="trigger" class="x-tag-veteran") Trusted User span.color-picker(slot="trigger" class="x-tag-veteran") Trusted User
div
el-color-picker(v-model="trustColor.legend" @change="updatetrustColor" size="mini" :predefine="['#ffd000', '#abcdef']")
span.color-picker(slot="trigger" class="x-tag-legend") Veteran User
div div
el-color-picker(v-model="trustColor.vip" @change="updatetrustColor" size="mini" :predefine="['#ff2626']") el-color-picker(v-model="trustColor.vip" @change="updatetrustColor" size="mini" :predefine="['#ff2626']")
span.color-picker(slot="trigger" class="x-tag-vip") VRChat Team span.color-picker(slot="trigger" class="x-tag-vip") VRChat Team
div div
el-color-picker(v-model="trustColor.troll" @change="updatetrustColor" size="mini" :predefine="['#782f2f']") el-color-picker(v-model="trustColor.troll" @change="updatetrustColor" size="mini" :predefine="['#782f2f']")
span.color-picker(slot="trigger" class="x-tag-troll") Nuisance span.color-picker(slot="trigger" class="x-tag-troll") Nuisance
div el-tab-pane(label="Notifications")
el-color-picker(v-model="trustColor.legendary" @change="updatetrustColor" size="mini" :predefine="['#ff69b4', '#b52626']") div.options-container(style="margin-top:0")
span.color-picker(slot="trigger" class="x-tag-legendary") Legend span.header Notifications
el-switch(v-model="legendColorOverride" style="padding-bottom:21px;padding-left:6px" @change="saveLegendColorOverride")
div.options-container
span.header Discord Presence
div.options-container-item div.options-container-item
span * Only works when VRChat is running. span.name SteamVR Overlay
el-switch(v-model="openVR" @change="saveOpenVROption")
div.options-container-item div.options-container-item
span.name Enable span.name Overlay Notifications
el-tooltip(placement="top" style="margin-left:5px" content="Recommended to disable Rich Presence in VRChat config.json below to stop it from conflicting") el-switch(v-model="overlayNotifications" @change="saveOpenVROption" :disabled="!openVR")
i.el-icon-warning(style="cursor:pointer" @click="showVRChatConfig")
el-switch(v-model="discordActive" @change="saveDiscordOption")
div.options-container-item div.options-container-item
span.name Instance type/player count el-button(size="small" icon="el-icon-rank" @click="showNotificationPositionDialog" :disabled="!overlayNotifications || !openVR") Notification Position
el-switch(v-model="discordInstance" @change="saveDiscordOption" :disabled="!discordActive")
div.options-container-item div.options-container-item
span.name Join button (public only) span.name XSOverlay Notifications
el-switch(v-model="discordJoinButton" @change="saveDiscordOption" :disabled="!discordActive") el-switch(v-model="xsNotifications" @change="saveOpenVROption")
div.options-container-item div.options-container-item
span.name Hide world details in private span.name User images (slower)
el-switch(v-model="discordHideInvite" @change="saveDiscordOption" :disabled="!discordActive") el-switch(v-model="imageNotifications" @change="saveOpenVROption")
div.options-container div.options-container-item
span.header SteamVR Overlay el-button(size="small" icon="el-icon-time" @click="promptNotificationTimeout" :disabled="(!overlayNotifications || !openVR) && !xsNotifications") Notification Timeout
span.sub-header Desktop Notifications
div.options-container-item
span.name When to display:
br
el-radio-group(v-model="desktopToast" @change="saveOpenVROption" size="mini")
el-radio-button(label="Never")
el-radio-button(label="Desktop Mode")
el-radio-button(label="Inside VR")
el-radio-button(label="Outside VR")
el-radio-button(label="Game Closed")
el-radio-button(label="Game Running")
el-radio-button(label="Always")
div.options-container-item
el-button(size="small" icon="el-icon-chat-square" @click="showNotyFeedFiltersDialog") Notification Filters
br
span.sub-header Text-To-Speech Options
div.options-container-item
span.name Notification TTS, When to play:
br
el-radio-group(v-model="notificationTTS" @change="saveNotificationTTS" size="mini")
el-radio-button(label="Never")
el-radio-button(label="Inside VR")
el-radio-button(label="Game Closed")
el-radio-button(label="Game Running")
el-radio-button(label="Always")
div.options-container-item
span.name TTS Voice
el-dropdown(@command="(voice) => changeTTSVoice(voice)" trigger="click" size="small")
el-button(size="mini" :disabled="notificationTTS === 'Never'")
span {{ getTTSVoiceName() }} #[i.el-icon-arrow-down.el-icon--right]
el-dropdown-menu(#default="dropdown")
el-dropdown-item(v-if="voice" v-for="(voice, index) in TTSvoices" :key="index" v-text="voice.name" :command="index")
el-tab-pane(label="Wrist Overlay")
div.options-container(style="margin-top:0")
span.header SteamVR Wrist Overlay
div.options-container-item div.options-container-item
span * It runs automatically when VRChat is running. span * It runs automatically when VRChat is running.
br br
@@ -1079,65 +1120,39 @@ html
span.name Hide CPU Usage span.name Hide CPU Usage
el-switch(v-model="hideCpuUsageFromFeed" @change="saveOpenVROption" :disabled="!openVR || !overlayWrist") el-switch(v-model="hideCpuUsageFromFeed" @change="saveOpenVROption" :disabled="!openVR || !overlayWrist")
div.options-container-item div.options-container-item
span.name Hide Uptime span.name Hide Game Uptime
el-switch(v-model="hideUptimeFromFeed" @change="saveOpenVROption" :disabled="!openVR || !overlayWrist") el-switch(v-model="hideUptimeFromFeed" @change="saveOpenVROption" :disabled="!openVR || !overlayWrist")
div.options-container-item div.options-container-item
span.name Show PC Uptime span.name Show PC Uptime
el-switch(v-model="pcUptimeOnFeed" @change="saveOpenVROption" :disabled="!openVR || !overlayWrist") el-switch(v-model="pcUptimeOnFeed" @change="saveOpenVROption" :disabled="!openVR || !overlayWrist")
div.options-container-item div.options-container-item
el-button(size="small" icon="el-icon-notebook-2" @click="showWristFeedFiltersDialog" :disabled="!openVR || !overlayWrist") Wrist Feed Filters el-button(size="small" icon="el-icon-notebook-2" @click="showWristFeedFiltersDialog" :disabled="!openVR || !overlayWrist") Wrist Feed Filters
br el-tab-pane(label="Discord Presence")
span.sub-header Notifications div.options-container(style="margin-top:0")
span.header Discord Presence
div.options-container-item div.options-container-item
span.name Overlay Notifications span * Only works when VRChat is running.
el-switch(v-model="overlayNotifications" @change="saveOpenVROption" :disabled="!openVR")
div.options-container-item div.options-container-item
el-button(size="small" icon="el-icon-rank" @click="showNotificationPositionDialog" :disabled="!overlayNotifications || !openVR") Notification Position span.name Enable
el-tooltip(placement="top" style="margin-left:5px" content="Recommended to disable Rich Presence in VRChat config.json below to stop it from conflicting")
i.el-icon-warning(style="cursor:pointer" @click="showVRChatConfig")
el-switch(v-model="discordActive" @change="saveDiscordOption")
div.options-container-item div.options-container-item
span.name XSOverlay Notifications span.name Instance type/player count
el-switch(v-model="xsNotifications" @change="saveOpenVROption") el-switch(v-model="discordInstance" @change="saveDiscordOption" :disabled="!discordActive")
div.options-container-item div.options-container-item
span.name User images (slower) span.name Join button (public only)
el-switch(v-model="imageNotifications" @change="saveOpenVROption") el-switch(v-model="discordJoinButton" @change="saveDiscordOption" :disabled="!discordActive")
div.options-container-item div.options-container-item
el-button(size="small" icon="el-icon-time" @click="promptNotificationTimeout" :disabled="(!overlayNotifications || !openVR) && !xsNotifications") Notification Timeout span.name Hide world details in private
el-switch(v-model="discordHideInvite" @change="saveDiscordOption" :disabled="!discordActive")
el-tab-pane(label="Advanced")
div.options-container(style="margin-top:0")
span.header Advanced
div.options-container-item div.options-container-item
span.name Desktop Notifications, When to display: el-button-group
br el-button(size="small" icon="el-icon-s-operation" @click="showVRChatConfig()") VRChat config.json
el-radio-group(v-model="desktopToast" @change="saveOpenVROption" size="mini") el-button(size="small" icon="el-icon-s-operation" @click="showLaunchOptions()") Launch Options
el-radio-button(label="Never")
el-radio-button(label="Desktop Mode")
el-radio-button(label="Inside VR")
el-radio-button(label="Outside VR")
el-radio-button(label="Game Closed")
el-radio-button(label="Game Running")
el-radio-button(label="Always")
div.options-container-item
el-button(size="small" icon="el-icon-chat-square" @click="showNotyFeedFiltersDialog") Notification Filters
br
span.sub-header Text-To-Speech Options
div.options-container-item
span.name Notification TTS, When to play:
br
el-radio-group(v-model="notificationTTS" @change="saveNotificationTTS" size="mini")
el-radio-button(label="Never")
el-radio-button(label="Inside VR")
el-radio-button(label="Game Closed")
el-radio-button(label="Game Running")
el-radio-button(label="Always")
div.options-container-item
span.name TTS Voice
el-dropdown(@command="(voice) => changeTTSVoice(voice)" trigger="click" size="small")
el-button(size="mini" :disabled="notificationTTS === 'Never'")
span {{ getTTSVoiceName() }} #[i.el-icon-arrow-down.el-icon--right]
el-dropdown-menu(#default="dropdown")
el-dropdown-item(v-if="voice" v-for="(voice, index) in TTSvoices" :key="index" v-text="voice.name" :command="index")
div.options-container
span.header VRChat Cache Management
span.sub-header Automatically Manage Cache When Closing VRChat
div.options-container-item
span.name(style="min-width:300px") Auto delete old versions from cache
el-switch(v-model="autoSweepVRChatCache" @change="saveOpenVROption")
div.options-container div.options-container
span.header Application span.header Application
div.options-container-item div.options-container-item
@@ -1155,10 +1170,11 @@ html
div.options-container-item div.options-container-item
span.name Time Format span.name Time Format
el-switch(v-model="dtHour12" @change="setDatetimeFormat" inactive-text="24 Hour" active-text="12 Hour") el-switch(v-model="dtHour12" @change="setDatetimeFormat" inactive-text="24 Hour" active-text="12 Hour")
div.options-container
span.sub-header Automatically Manage Cache When Closing VRChat
div.options-container-item div.options-container-item
el-button-group span.name(style="min-width:300px") Auto delete old versions from cache
el-button(size="small" icon="el-icon-s-operation" @click="showLaunchOptions()") Launch Options el-switch(v-model="autoSweepVRChatCache" @change="saveOpenVROption")
el-button(size="small" icon="el-icon-s-operation" @click="showVRChatConfig()") VRChat config.json
div.options-container div.options-container
span.header Remote Avatar Database span.header Remote Avatar Database
div.options-container-item div.options-container-item
@@ -1210,6 +1226,10 @@ html
el-button(size="small" icon="el-icon-time" @click="promptPhotonLobbyTimeoutThreshold" :disabled="!openVR") Timeout Threshold el-button(size="small" icon="el-icon-time" @click="promptPhotonLobbyTimeoutThreshold" :disabled="!openVR") Timeout Threshold
div.options-container div.options-container
span.header VRCX Instance Cache/Debug span.header VRCX Instance Cache/Debug
div.options-container-item
span.name Disable GameLog
el-switch(v-model="gameLogDisabled" @change="disableGameLogDialog")
span.name(style="margin-left:15px") (will likely break things)
div.options-container-item div.options-container-item
span.name User cache: #[span(v-text="API.cachedUsers.size")] span.name User cache: #[span(v-text="API.cachedUsers.size")]
div.options-container-item div.options-container-item
@@ -1218,10 +1238,6 @@ html
span.name Avatar cache: #[span(v-text="API.cachedAvatars.size")] span.name Avatar cache: #[span(v-text="API.cachedAvatars.size")]
div.options-container-item div.options-container-item
span.name Avatar Name cache: #[span(v-text="API.cachedAvatarNames.size")] span.name Avatar Name cache: #[span(v-text="API.cachedAvatarNames.size")]
div.options-container-item
span.name Disable GameLog
el-switch(v-model="gameLogDisabled" @change="disableGameLogDialog")
span.name(style="margin-left:15px") (will likely break things)
div.options-container-item div.options-container-item
el-button(size="small" icon="el-icon-delete-solid" @click="clearVRCXCache") Clear Cache el-button(size="small" icon="el-icon-delete-solid" @click="clearVRCXCache") Clear Cache
el-button(size="small" icon="el-icon-time" @click="promptAutoClearVRCXCacheFrequency") Auto Clear Cache el-button(size="small" icon="el-icon-time" @click="promptAutoClearVRCXCacheFrequency") Auto Clear Cache
@@ -1254,15 +1270,6 @@ html
span.name Video Play: #[span(v-text="sqliteTableSizes.videoPlay")] span.name Video Play: #[span(v-text="sqliteTableSizes.videoPlay")]
div.options-container-item div.options-container-item
span.name Event: #[span(v-text="sqliteTableSizes.event")] span.name Event: #[span(v-text="sqliteTableSizes.event")]
div.options-container(style="margin-top:45px;border-top:1px solid #eee;padding-top:30px")
span.header Legal Notice
div.options-container-item
p © 2019-2021 #[a(href="https://github.com/pypy-vrc" target="_blank") pypy] (mina#5656)
p VRCX is an assistant application for provide information about manage friendship. this application uses unofficial VRChat API (VRCSDK).
p VRCX isn't endorsed by VRChat and doesn't reflect the views or opinions of VRChat or anyone officially involved in producing or managing VRChat. VRChat is trademark of VRChat Inc. VRChat © VRChat Inc.
p pypy is not responsible for any problems caused by VRCX. Use at your own risk!
div.options-container-item
el-button(@click="ossDialog = true" size="small") Open Source Software Notice
//- friends //- friends
.x-aside-container(v-show="$refs.menu && $refs.menu.activeIndex !== 'friendsList'" id="aside") .x-aside-container(v-show="$refs.menu && $refs.menu.activeIndex !== 'friendsList'" id="aside")
@@ -1569,7 +1576,9 @@ html
el-button(type="default" :loading="userDialog.isFavoriteWorldsLoading" @click="getUserFavoriteWorlds(userDialog.id)" size="mini" icon="el-icon-refresh" circle) el-button(type="default" :loading="userDialog.isFavoriteWorldsLoading" @click="getUserFavoriteWorlds(userDialog.id)" size="mini" icon="el-icon-refresh" circle)
div(v-loading="userDialog.isFavoriteWorldsLoading" style="min-height:60px") div(v-loading="userDialog.isFavoriteWorldsLoading" style="min-height:60px")
template(v-for="(list, index) in userFavoriteWorlds" v-if="list") template(v-for="(list, index) in userFavoriteWorlds" v-if="list")
span(style="font-weight:bold;font-size:16px") {{ list[0] }} el-tab-pane
span(slot="label")
span(v-text="list[0]" style="font-weight:bold;font-size:16px")
i.x-user-status(style="margin-left:5px" :class="userFavoriteWorldsStatus(list[1])") i.x-user-status(style="margin-left:5px" :class="userFavoriteWorldsStatus(list[1])")
span(style="color:#909399;font-size:12px;margin-left:5px") {{ list[2].length }}/64 span(style="color:#909399;font-size:12px;margin-left:5px") {{ list[2].length }}/64
.x-friend-list(style="margin-top:10px;margin-bottom:15px;min-height:60px") .x-friend-list(style="margin-top:10px;margin-bottom:15px;min-height:60px")