mirror of
https://github.com/vrcx-team/VRCX.git
synced 2026-04-06 00:32:02 +02:00
adjust whats new dialog word
This commit is contained in:
@@ -15,6 +15,12 @@
|
||||
<h2 class="m-0 text-[23px] font-bold tracking-tight">
|
||||
{{ t(whatsNewDialog.titleKey || 'onboarding.whatsnew.title') }}
|
||||
</h2>
|
||||
|
||||
<p
|
||||
v-if="whatsNewDialog.subtitleKey"
|
||||
class="mt-1 text-[13px] text-muted-foreground">
|
||||
{{ t(whatsNewDialog.subtitleKey) }}
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<!-- Feature Cards -->
|
||||
@@ -88,7 +94,7 @@
|
||||
|
||||
<script setup>
|
||||
import { markRaw } from 'vue';
|
||||
import { LayoutDashboard, Search, Activity, Images } from 'lucide-vue-next';
|
||||
import { Search, FolderHeart, RefreshCw, MousePointerClick } from 'lucide-vue-next';
|
||||
import { storeToRefs } from 'pinia';
|
||||
import { useI18n } from 'vue-i18n';
|
||||
|
||||
@@ -122,16 +128,16 @@
|
||||
|
||||
const iconMap = {
|
||||
search: markRaw(Search),
|
||||
'layout-dashboard': markRaw(LayoutDashboard),
|
||||
activity: markRaw(Activity),
|
||||
images: markRaw(Images)
|
||||
'folder-heart': markRaw(FolderHeart),
|
||||
'refresh-cw': markRaw(RefreshCw),
|
||||
'mouse-pointer-click': markRaw(MousePointerClick)
|
||||
};
|
||||
|
||||
const hueMap = {
|
||||
search: '142',
|
||||
'layout-dashboard': '45',
|
||||
activity: '200',
|
||||
images: '280'
|
||||
'folder-heart': '340',
|
||||
'refresh-cw': '200',
|
||||
'mouse-pointer-click': '45'
|
||||
};
|
||||
|
||||
function resolveIcon(iconName) {
|
||||
|
||||
@@ -3000,28 +3000,29 @@
|
||||
"cta": "Got It",
|
||||
"common": {
|
||||
"got_it": "Got It",
|
||||
"view_changelog": "View changelog",
|
||||
"view_changelog": "View All Changes",
|
||||
"support": "Support VRCX"
|
||||
},
|
||||
"releases": {
|
||||
"2026_04_05": {
|
||||
"title": "What's New in VRCX",
|
||||
"title": "Explore New Features",
|
||||
"subtitle": "A few useful features you might not notice.",
|
||||
"items": {
|
||||
"quick_search": {
|
||||
"title": "Quick Search",
|
||||
"description": "Find users, worlds, and avatars in seconds."
|
||||
"description": "Press Ctrl+K (⌘K) to find users, worlds, groups, and avatars."
|
||||
},
|
||||
"dashboard": {
|
||||
"title": "Dashboard",
|
||||
"description": "Build a workspace that fits how you use VRCX."
|
||||
"local_favorite_groups": {
|
||||
"title": "Local Favorites",
|
||||
"description": "Create unlimited custom friend groups beyond VRChat's limits."
|
||||
},
|
||||
"activity_insights": {
|
||||
"title": "Activity Insights",
|
||||
"description": "See shared online time, Most Visited Worlds, and activity trends."
|
||||
"auto_status": {
|
||||
"title": "Auto Status",
|
||||
"description": "Auto-switch status based on friend presence, filtered by group."
|
||||
},
|
||||
"my_avatars": {
|
||||
"title": "My Avatars",
|
||||
"description": "Browse and manage your avatars with less friction."
|
||||
"right_click_menus": {
|
||||
"title": "Context Menus",
|
||||
"description": "Right-click on friends, tables, and headers for quick actions."
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,16 +6,16 @@ const whatsNewReleases = Object.freeze({
|
||||
icon: 'search'
|
||||
},
|
||||
{
|
||||
key: 'dashboard',
|
||||
icon: 'layout-dashboard'
|
||||
key: 'local_favorite_groups',
|
||||
icon: 'folder-heart'
|
||||
},
|
||||
{
|
||||
key: 'activity_insights',
|
||||
icon: 'activity'
|
||||
key: 'auto_status',
|
||||
icon: 'refresh-cw'
|
||||
},
|
||||
{
|
||||
key: 'my_avatars',
|
||||
icon: 'images'
|
||||
key: 'right_click_menus',
|
||||
icon: 'mouse-pointer-click'
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -36,7 +36,7 @@ function normalizeReleaseVersion(version) {
|
||||
|
||||
/**
|
||||
* @param {string} version
|
||||
* @returns {{titleKey: string, items: Array<{key: string, icon: string, titleKey: string, descriptionKey: string}>} | null}
|
||||
* @returns {{titleKey: string, subtitleKey: string, items: Array<{key: string, icon: string, titleKey: string, descriptionKey: string}>} | null}
|
||||
*/
|
||||
function getWhatsNewRelease(version) {
|
||||
const normalizedVersion = normalizeReleaseVersion(version);
|
||||
@@ -52,6 +52,7 @@ function getWhatsNewRelease(version) {
|
||||
const baseKey = `onboarding.whatsnew.releases.${i18nKey}`;
|
||||
return {
|
||||
titleKey: `${baseKey}.title`,
|
||||
subtitleKey: `${baseKey}.subtitle`,
|
||||
items: release.items.map((item) => ({
|
||||
...item,
|
||||
titleKey: `${baseKey}.items.${item.key}.title`,
|
||||
@@ -61,7 +62,7 @@ function getWhatsNewRelease(version) {
|
||||
}
|
||||
|
||||
/**
|
||||
* @returns {{titleKey: string, items: Array<{key: string, icon: string, titleKey: string, descriptionKey: string}>} | null}
|
||||
* @returns {{titleKey: string, subtitleKey: string, items: Array<{key: string, icon: string, titleKey: string, descriptionKey: string}>} | null}
|
||||
*/
|
||||
function getLatestWhatsNewRelease() {
|
||||
const versions = Object.keys(whatsNewReleases);
|
||||
|
||||
@@ -19,6 +19,7 @@ import * as workerTimers from 'worker-timers';
|
||||
const emptyWhatsNewDialog = () => ({
|
||||
visible: false,
|
||||
titleKey: '',
|
||||
subtitleKey: '',
|
||||
items: []
|
||||
});
|
||||
|
||||
@@ -199,6 +200,7 @@ export const useVRCXUpdaterStore = defineStore('VRCXUpdater', () => {
|
||||
whatsNewDialog.value = {
|
||||
visible: true,
|
||||
titleKey: release.titleKey,
|
||||
subtitleKey: release.subtitleKey,
|
||||
items: release.items.map((item) => ({ ...item }))
|
||||
};
|
||||
|
||||
@@ -218,6 +220,7 @@ export const useVRCXUpdaterStore = defineStore('VRCXUpdater', () => {
|
||||
whatsNewDialog.value = {
|
||||
visible: true,
|
||||
titleKey: release.titleKey,
|
||||
subtitleKey: release.subtitleKey,
|
||||
items: release.items.map((item) => ({ ...item }))
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user