zenno/convo: refactor name logic

This commit is contained in:
2026-04-06 16:09:46 -04:00
parent 256e11d320
commit dfb2ad2950

View File

@@ -8,9 +8,13 @@
let charaID = $state(1001); let charaID = $state(1001);
let convo = $state(1); let convo = $state(1);
let options = $derived(byChara.global.get(charaID) ?? []); const options = $derived(byChara.global.get(charaID) ?? []);
let cur = $derived(options.find((c) => c.number === convo)); const cur = $derived(options.find((c) => c.number === convo));
let suggested = $derived.by(() => { const cur1Name = $derived(cur != null ? (charaNames.get(cur.chara_1)?.en ?? 'someone not a trainee') : '');
const cur2Name = $derived(cur?.chara_2 != null ? (charaNames.get(cur.chara_2)?.en ?? 'someone not a trainee') : '');
const cur3Name = $derived(cur?.chara_3 != null ? (charaNames.get(cur.chara_3)?.en ?? 'someone not a trainee') : '');
const alone = $derived([cur?.chara_1, cur?.chara_2, cur?.chara_3].filter((x) => x != null).length == 1 ? ' alone' : '');
const suggested = $derived.by(() => {
if (cur == null) { if (cur == null) {
return []; return [];
} }
@@ -39,14 +43,12 @@
{#if cur} {#if cur}
<div class="shadow-sm transition-shadow hover:shadow-md"> <div class="shadow-sm transition-shadow hover:shadow-md">
<div class="mt-8 flex text-center text-lg"> <div class="mt-8 flex text-center text-lg">
<span class="flex-1" <span class="flex-1">{cur1Name}{alone}</span>
>{charaNames.get(cur.chara_1)?.en ?? 'someone not a trainee'}{(cur.chara_2 ?? cur.chara_3) == null ? ' alone' : ''}</span {#if cur2Name}
> <span class="flex-1">{cur2Name}</span>
{#if cur.chara_2}
<span class="flex-1">{charaNames.get(cur.chara_2)?.en ?? 'someone not a trainee'}</span>
{/if} {/if}
{#if cur.chara_3} {#if cur3Name}
<span class="flex-1">{charaNames.get(cur.chara_3)?.en ?? 'someone not a trainee'}</span> <span class="flex-1">{cur3Name}</span>
{/if} {/if}
</div> </div>
<div class="flex w-full text-center text-lg"> <div class="flex w-full text-center text-lg">