fix: some more polish

This commit is contained in:
2025-04-27 18:53:01 +00:00
parent 6a32ad65a5
commit 240f60b283
6 changed files with 23 additions and 11 deletions

View File

@ -3,6 +3,9 @@
- Fixed the clear cache button not working - Fixed the clear cache button not working
- Fixed Linux builds - Fixed Linux builds
- Moved the store tab to the left - Moved the store tab to the left
- "Reapply mods and start" renamed from "Refresh and start" to better convey the meaning
- "Reapply mods and start" is no longer necessary when enabling packages from the `local` namespace
- Various internationalization additions
- STARTLINER now remembers the recently open tab and re-opens it on the next session - STARTLINER now remembers the recently open tab and re-opens it on the next session
- Added "Beta" to the title as STARTLINER is approaching feature-completeness - Added "Beta" to the title as STARTLINER is approaching feature-completeness

View File

@ -88,7 +88,9 @@ const data: ComputedRef<Datum[]> = computed(() => {
return res; return res;
}); });
const counter = ref(0); const context = ref({
index: 0,
});
onMounted(async () => { onMounted(async () => {
[standardOngeki, systemProcessing, lever, server, finaleOngeki] = [standardOngeki, systemProcessing, lever, server, finaleOngeki] =
@ -127,7 +129,8 @@ onMounted(async () => {
}); });
const exitLabel = computed(() => { const exitLabel = computed(() => {
return props.firstTime === true && counter.value < data.value.length - 1 return props.firstTime === true &&
context.value.index < data.value.length - 1
? 'Skip' ? 'Skip'
: 'Close'; : 'Close';
}); });
@ -144,13 +147,14 @@ const exitLabel = computed(() => {
: `${game ? prettyPrint(game) : '<game>'} help` : `${game ? prettyPrint(game) : '<game>'} help`
" "
:style="{ width: '760px', scale: client.scaleValue }" :style="{ width: '760px', scale: client.scaleValue }"
v-on:show="() => (context.index = 0)"
> >
<Carousel <Carousel
:value="data" :value="data"
:num-visible="1" :num-visible="1"
:num-scroll="1" :num-scroll="1"
:page="counter" :context="context"
v-on:update:page="(p) => (counter = p)" v-on:update:page="(p) => (context.index = p)"
> >
<template #item="slotProps"> <template #item="slotProps">
<div class="md-container markdown"> <div class="md-container markdown">
@ -172,10 +176,10 @@ const exitLabel = computed(() => {
</Carousel> </Carousel>
<div style="width: 100%; text-align: center"> <div style="width: 100%; text-align: center">
<Button <Button
v-if="counter < data.length - 1" v-if="context.index < data.length - 1"
class="m-auto mr-4" class="m-auto mr-4"
label="Next" label="Next"
@click="() => (counter += 1)" @click="() => (context.index += 1)"
/> />
<Button <Button
class="m-auto" class="m-auto"

View File

@ -114,6 +114,8 @@ const menuItems = computed(() => {
icon: 'pi pi-exclamation-circle', icon: 'pi pi-exclamation-circle',
command: async () => await startline(true, false), command: async () => await startline(true, false),
}, },
];
let baseTail = [
{ {
label: t('start.button.help'), label: t('start.button.help'),
icon: 'pi pi-question-circle', icon: 'pi pi-question-circle',
@ -137,7 +139,7 @@ const menuItems = computed(() => {
]; ];
} }
if (prf.current.meta.game === 'chunithm') { if (prf.current.meta.game === 'chunithm') {
return base; return [...base, ...baseTail];
} }
if (prf.current.meta.game === 'ongeki') { if (prf.current.meta.game === 'ongeki') {
return [ return [
@ -152,6 +154,7 @@ const menuItems = computed(() => {
icon: 'pi pi-trash', icon: 'pi pi-trash',
command: async () => await invoke('clear_cache'), command: async () => await invoke('clear_cache'),
}, },
...baseTail,
]; ];
} }
}); });

View File

@ -12,6 +12,8 @@ const i18n = createI18n({
legacy: false, legacy: false,
locale: 'en', locale: 'en',
fallbackLocale: 'en', fallbackLocale: 'en',
warnHtmlInMessage: false,
warnHtmlMessage: false,
messages: { en, ja }, messages: { en, ja },
}); });

View File

@ -21,11 +21,11 @@ export default {
button: { button: {
start: 'START', start: 'START',
stop: 'STOP', stop: 'STOP',
unchecked: 'Start unchecked', unchecked: 'Skip checks and start',
shortcut: 'Create desktop shortcut', shortcut: 'Create desktop shortcut',
help: 'Help', help: 'Help',
refresh: 'Refresh and start', refresh: 'Reapply mods and start',
cache: 'Clear cache', cache: 'Clear mod cache',
}, },
}, },
game: { game: {

View File

@ -374,7 +374,7 @@ export const useClientStore = defineStore('client', () => {
const theme: Ref<'light' | 'dark' | 'system'> = ref('system'); const theme: Ref<'light' | 'dark' | 'system'> = ref('system');
const onboarded: Ref<Game[]> = ref([]); const onboarded: Ref<Game[]> = ref([]);
const locale: Ref<Locale> = ref('en'); const locale: Ref<Locale> = ref('en');
const currentTab: Ref<string> = ref(''); const currentTab: Ref<string> = ref('users');
const _scaleValue = (value: ScaleType) => const _scaleValue = (value: ScaleType) =>
value === 's' ? 1 : value === 'm' ? 1.25 : value === 'l' ? 1.5 : 2; value === 's' ? 1 : value === 'm' ? 1.25 : value === 'l' ? 1.5 : 2;