mirror of
https://github.com/MrUnknownDE/VRCX.git
synced 2026-05-07 14:56:06 +02:00
Upgrade to Vue3 and Element Plus (#1374)
* Update Vue devtools
* upgrade vue pinia element-plus vue-i18n, add vite
* fix: i18n
* global components
* change v-deep
* upgrade vue-lazyload
* data table
* update enlint and safe-dialog
* package.json and vite.config.js
* el-icon
* el-message
* vue 2 -> vue3 migration changes
* $pinia
* dialog
* el-popover slot
* lint
* chore
* slot
* scss
* remote state access
* misc
* jsconfig
* el-button size mini -> small
* :model-value
* ElMessageBox
* datatable
* remove v-lazyload
* template #dropdown
* mini -> small
* css
* byebye hideTooltips
* use sass-embedded
* Update SQLite, remove unneeded libraries
* Fix shift remove local avatar favorites
* Electron arm64
* arm64 support
* bye pug
* f-word vite hah
* misc
* remove safe dialog component
* Add self invite to launch dialog
* Fix errors
* Icons 1
* improve localfavorite loading performance
* improve favorites world item performance
* dialog visibility changes for Element Plus
* clear element plus error
* import performance
* revert App.vue hah
* hah
* Revert "Add self invite to launch dialog"
This reverts commit 4801cfad58.
* Toggle self invite/open in-game
* Self invite on launch dialog
* el-button icon
* el-icon
* fix user dialog tab switching logic
* fix PlayerList
* Formatting changes
* More icons
* Fix friend log table
* loading margin
* fix markdown
* fix world dialog tab switching issue
* Fixes and formatting
* fix: global i18n.t export
* fix favorites world tab not working
* Create instance, displayName
* Remove group members sort by userId
* Fix loading dialog tabs on swtich
* Star
* charts console.warn
* wip: fix charts
* wip: fix charts
* wip: charts composables
* fix favorite item tooltip warning
* Fixes and formatting
* Clean up image dialogs
* Remove unused method
* Fix platform/size border
* Fix platform/size border
* $vr
* fix friendExportDialogVisible binding
* ElMessageBox and Settings
* Login formatting
* Rename VR overlay query
* Fix image popover and userdialog badges
* Formatting
* Big buttons
* Fixes, update Cef
* Fix gameLog table nav buttons jumping around while using nav buttons
* Fix z-index
* vr overlay
* vite input add theme
* defineAsyncComponent
* ISO 639-1
* fix i18n
* clean t
* Formatting, fix calendar, rotate arrows
* Show user status when user is offline
* Fix VR overlay
* fix theme and clean up
* split InstanceActivity
* tweak
* Fix VR overlay formatting
* fix scss var
* AppDebug hahahaha
* Years
* remove reactive
* improve perf
* state hah…
* fix user rendering poblems when user object is not yet loaded
* improve perf
* Update avatar/world image uploader, licenses, remove previous images dialog (old images are now deleted)
* improve perf 1
* Suppress stray errors
* fix traveling location display issue
* Fix empty instance creator
* improve friend list refresh performance
* fix main charts
* fix chart
* Fix darkmode
* Fix avatar dialog tags
---------
Co-authored-by: pa <maplenagisa@gmail.com>
This commit is contained in:
+26
-26
@@ -1,10 +1,10 @@
|
||||
import { defineStore } from 'pinia';
|
||||
import { computed, reactive, watch } from 'vue';
|
||||
import { ElMessageBox, ElMessage } from 'element-plus';
|
||||
import { worldRequest } from '../api';
|
||||
import { $app } from '../app';
|
||||
import configRepository from '../service/config';
|
||||
import { database } from '../service/database';
|
||||
import { AppGlobal } from '../service/appConfig';
|
||||
import { AppDebug } from '../service/appConfig';
|
||||
import { failedGetRequests } from '../service/request';
|
||||
import { watchState } from '../service/watchState';
|
||||
import { debounce, parseLocation, refreshCustomCss } from '../shared/utils';
|
||||
@@ -24,7 +24,7 @@ import { useAdvancedSettingsStore } from './settings/advanced';
|
||||
import { useUpdateLoopStore } from './updateLoop';
|
||||
import { useUserStore } from './user';
|
||||
import { useWorldStore } from './world';
|
||||
import { useI18n } from 'vue-i18n-bridge';
|
||||
import { useI18n } from 'vue-i18n';
|
||||
import Noty from 'noty';
|
||||
|
||||
export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
@@ -47,7 +47,6 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
const { t } = useI18n();
|
||||
|
||||
const state = reactive({
|
||||
isRunningUnderWine: false,
|
||||
databaseVersion: 0,
|
||||
clearVRCXCacheFrequency: 172800,
|
||||
proxyServer: '',
|
||||
@@ -174,6 +173,13 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
}
|
||||
});
|
||||
|
||||
const proxyServer = computed({
|
||||
get: () => state.proxyServer,
|
||||
set: async (value) => {
|
||||
state.proxyServer = value;
|
||||
}
|
||||
});
|
||||
|
||||
// Make sure file drops outside of the screenshot manager don't navigate to the file path dropped.
|
||||
// This issue persists on prompts created with prompt(), unfortunately. Not sure how to fix that.
|
||||
document.body.addEventListener('drop', function (e) {
|
||||
@@ -189,27 +195,20 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
}
|
||||
} else if (e.altKey && e.key === 'R') {
|
||||
refreshCustomCss();
|
||||
$app.$message({
|
||||
ElMessage({
|
||||
message: 'Custom CSS refreshed',
|
||||
type: 'success'
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
const isRunningUnderWine = computed({
|
||||
get: () => state.isRunningUnderWine,
|
||||
set: (value) => {
|
||||
state.isRunningUnderWine = value;
|
||||
}
|
||||
});
|
||||
|
||||
function showConsole() {
|
||||
AppApi.ShowDevTools();
|
||||
if (
|
||||
AppGlobal.debug ||
|
||||
AppGlobal.debugWebRequests ||
|
||||
AppGlobal.debugWebSocket ||
|
||||
AppGlobal.debugUserDiff
|
||||
AppDebug.debug ||
|
||||
AppDebug.debugWebRequests ||
|
||||
AppDebug.debugWebSocket ||
|
||||
AppDebug.debugUserDiff
|
||||
) {
|
||||
return;
|
||||
}
|
||||
@@ -229,7 +228,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
let msgBox;
|
||||
if (state.databaseVersion < databaseVersion) {
|
||||
if (state.databaseVersion) {
|
||||
msgBox = $app.$message({
|
||||
msgBox = ElMessage({
|
||||
message:
|
||||
'DO NOT CLOSE VRCX, database upgrade in progress...',
|
||||
type: 'warning',
|
||||
@@ -260,7 +259,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
msgBox?.close();
|
||||
if (state.databaseVersion) {
|
||||
// only display when database exists
|
||||
$app.$message({
|
||||
ElMessage({
|
||||
message: 'Database upgrade complete',
|
||||
type: 'success'
|
||||
});
|
||||
@@ -269,7 +268,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
msgBox?.close();
|
||||
$app.$message({
|
||||
ElMessage({
|
||||
message:
|
||||
'Database upgrade failed, check console for details',
|
||||
type: 'error',
|
||||
@@ -450,7 +449,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
console.log('Game closed, skipped event', data);
|
||||
return;
|
||||
}
|
||||
if (AppGlobal.debugPhotonLogging) {
|
||||
if (AppDebug.debugPhotonLogging) {
|
||||
console.log(
|
||||
'OnEvent',
|
||||
data.OnEventData.Code,
|
||||
@@ -465,7 +464,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
console.log('Game closed, skipped event', data);
|
||||
return;
|
||||
}
|
||||
if (AppGlobal.debugPhotonLogging) {
|
||||
if (AppDebug.debugPhotonLogging) {
|
||||
console.log(
|
||||
'OnOperationResponse',
|
||||
data.OnOperationResponseData.OperationCode,
|
||||
@@ -483,7 +482,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
console.log('Game closed, skipped event', data);
|
||||
return;
|
||||
}
|
||||
if (AppGlobal.debugPhotonLogging) {
|
||||
if (AppDebug.debugPhotonLogging) {
|
||||
console.log(
|
||||
'OnOperationRequest',
|
||||
data.OnOperationRequestData.OperationCode,
|
||||
@@ -507,7 +506,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
photonStore.photonLastEvent7List = Date.parse(data.dt);
|
||||
break;
|
||||
case 'VrcxMessage':
|
||||
if (AppGlobal.debugPhotonLogging) {
|
||||
if (AppDebug.debugPhotonLogging) {
|
||||
console.log('VrcxMessage:', data);
|
||||
}
|
||||
eventVrcxMessage(data);
|
||||
@@ -601,7 +600,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
const regexAvatarId =
|
||||
/avtr_[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}/g;
|
||||
if (!avatarId.match(regexAvatarId) || avatarId.length !== 41) {
|
||||
$app.$message({
|
||||
ElMessage({
|
||||
message: 'Invalid Avatar ID',
|
||||
type: 'error'
|
||||
});
|
||||
@@ -699,7 +698,7 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
return;
|
||||
}
|
||||
// popup message about auto restore
|
||||
$app.$alert(
|
||||
ElMessageBox.alert(
|
||||
t('dialog.registry_backup.restore_prompt'),
|
||||
t('dialog.registry_backup.header')
|
||||
);
|
||||
@@ -764,7 +763,8 @@ export const useVrcxStore = defineStore('Vrcx', () => {
|
||||
|
||||
return {
|
||||
state,
|
||||
isRunningUnderWine,
|
||||
|
||||
proxyServer,
|
||||
currentlyDroppingFile,
|
||||
isRegistryBackupDialogVisible,
|
||||
ipcEnabled,
|
||||
|
||||
Reference in New Issue
Block a user