{"release_id":"01a1c502-4ad1-0000-ec62-adc54d3c69aa","chunk_id":"01a1c502-4c75-7ff1-81ee-7e981ed4f5af","file":"110.CEcsNSx8.mjs","mappings":"42CAAA,UAQCA,GAAO,KACNC,EAAW,IAAI,MAAM,MACRA,EAAW,IAAI,IAAI,EAChC,EAEK,MAAAC,eAAkB,IAAI,EACtBC,EAAWC,GAAW,IACvB,KAAKA,CAAG,EAAE,mBAAmB,QAAO,CAAI,MAAO,QAAS,IAAK,SAAS,GAAI,YAAW,EAGpFC,EAAWC,GACX,CAAA,YAAa,YAAa,YAAa,WAAW,EAAE,SAASA,EAAE,MAAM,GAAY,KAAM,OAAQ,IAAK,MAAM,EAC3GA,EAAE,SAAW,SAAiBA,EAAE,KAAQ,KAAI,KAAOA,EAAE,OAAS,EAAE,GAAI,IAAK,KAAK,GAAO,KAAI,KAAOA,EAAE,OAAS,EAAE,GAAI,IAAK,MAAM,EAC5HA,EAAE,SAAW,aAAeA,EAAE,SAAW,SACxCA,EAAE,IAAG,CAAW,KAAMA,EAAE,SAAW,SAAW,cAAgB,iBAAkB,IAAK,QAChF,KAAMA,EAAE,SAAW,SAAW,SAAW,UAAW,IAAK,SAE/DA,EAAE,SAAW,WAAU,CAAW,KAAM,WAAY,IAAK,OAAO,EAC3D,CAAA,KAAM,YAAa,IAAK,OAAO,MAMzCC,EAAIC,GAAA,EAFJC,GAAW,SAAAC,GAAA,SAAEC,GAAA,kBAAcT,CAAC,EAAC,MAAI,EAAA,MAAAU,EAAKV,CAAC,EAAC,KAAG,EAAA,gBAG1C,IAAAW,IADDN,CAAI,MACHM,CAAC,IAADA,CAAC,EAED,IAAAC,IAFAD,EAAC,CAAA,MAEDC,CAAG,EACFC,EAAUC,EAAA,WAAM,OAAAJ,EAAAV,CAAC,EAAC,sBAAiB,OAAAU,EAAAV,CAAC,EAAC,iBAAkB,QAAU,SACjEe,EAAGC,EAAAF,EAAA,CAAA,EAEFG,MAFDF,CAAG,EAAA,CAAA,MAEFE,CAAG,EAAyBC,EAAIF,EAAAG,CAAA,MAAJD,CAAI,IAAJA,CAAI,UAAJA,CAAI,yCAAiElB,CAAC,EAAC,YAAU,EAAA,WAAAU,EAAUV,CAAC,EAAC,aAAe,EAAI,GAAK,GAAG,EAAA,CAAA,kBAApEU,EAAAV,CAAC,EAAC,YAAUoB,EAAAC,CAAA,MAA5FJ,CAAG,IAFJF,CAAG,IAFJH,CAAG,UAAHA,EAAG,CAAA,iBASFU,EAAGC,GAAA,MAAHD,CAAG,aAEHE,EAAGC,GAAA,KAAHD,EAAG,GAAA,IAAAE,EAAA,KACS,KAAQtB,GAAGA,EAAE,KAAI,CAAAI,EAATJ,IAAC,OACZuB,EAACC,EAAA,IAAGzB,EAAOO,EAACN,CAAC,CAAA,CAAA,MACpByB,EAACC,GAAA,MAADD,CAAC,EACAhB,EAAUkB,EAAA,WAAM,OAAArB,EAAAN,CAAC,EAAC,2BAAsB,OAAAM,EAAAN,CAAC,EAAC,sBAAuB,QAAU,SAC3E4B,EAAGhB,EAAAe,EAAA,CAAA,EACFE,IADDD,CAAG,EAEDE,IADDD,CAAG,MACFC,EAAI,EAAA,IAAJA,CAAI,EACJ,IAAAC,IADAD,EAAI,CAAA,MACJC,CAAI,IAAJA,CAAI,IAFLF,CAAG,EAIH,IAAAG,IAJAH,EAAG,CAAA,MAIHG,EAAG,EAAA,IAAHA,CAAG,IALJJ,CAAG,EAOH,IAAAK,IAPAL,EAAG,CAAA,EAQFM,IADDD,CAAG,MACFC,EAAI,EAAA,IAAJA,CAAI,EACJ,IAAAC,IADAD,EAAI,CAAA,MACJC,EAAI,EAAA,IAAJA,CAAI,IAFLF,CAAG,IATJR,CAAC,UAADA,EAAC,OAAA,UAAAnB,EAAeN,CAAC,EAAC,MAAI,EAAA,EAAA,EAIAoC,EAAAC,EAAA/B,EAAAN,CAAC,EAAC,OAAS,WAAa,OAAS,UAAU,EAChCoC,EAAAE,EAAA,IAAAhC,EAAAN,CAAC,EAAC,UAAQ,EAAA,EAAA,EAEboC,EAAAG,EAAAjC,EAAAN,CAAC,EAAC,SAAS,KAGvCkC,EAAI,EAAA,QAAA5B,EAAciB,CAAC,EAAC,KAAG,EAAA,GAAA,eAAA,EAAIa,EAAAI,EAAAlC,EAAAiB,CAAC,EAAC,IAAI,UACd,CAAA,IAAA1B,IAAQG,CAAC,EAAC,SAAOM,EAAIN,CAAC,EAAC,SAAS,CAAA,OAXrDyB,CAAC,MAHHL,CAAG,MAAHA,CAAG,kBAHK,KAAK,SAAW,EAACJ,EAAAyB,CAAA,EAAAzB,EAAA0B,EAAA,EAAA,MAX3BzC,CAAI,WACHM,EAAC,OAAA,MAAAD,EAAWV,CAAC,EAAC,KAAG,EAAA,EAAA,EAAyBwC,EAAAO,EAAA,MAAArC,EAAAV,CAAC,EAAC,KAAG,EAAA,EAAA,EAM5BwC,EAAArB,EAAA,GAAAT,EAAAV,CAAC,EAAC,MAAI,EAAA,KAAA,EAAqBwC,EAAAQ,EAAA,GAAAtC,EAAAV,CAAC,EAAC,SAAO,EAAA,IAAAU,EAAGV,CAAC,EAAC,WAAS,EAAA,EAAA,QAPtEK,CAAI,MAJG","names":["onMount","activeMode","c","fmtDate","iso","outcome","w","main","root","$.head","$$anchor","$.document","$.get","a","div","ClanEmblem","node","div_1","$.sibling","div_2","span","text_1","$$render","consequent","div_3","root_3","div_4","root_4","$$props","o","$.derived","a_1","root_5","node_3","div_5","div_6","span_1","span_2","div_7","div_8","span_3","span_4","$.set_text","text_4","text_5","text_6","text_7","consequent_1","alternate","text","text_2"],"sources":["../../../../../../src/routes/k/[tag]/wars/+page.svelte"],"sourcesContent":["<script lang=\"ts\">\n\timport { onMount } from 'svelte';\n\timport { activeMode } from '$lib/stores/activeMode';\n\timport ClanEmblem from '$lib/components/clan/ClanEmblem.svelte';\n\timport type { ClanWarListItem } from '$lib/server/clan-war';\n\n\tlet { data } = $props();\n\n\tonMount(() => {\n\t\tactiveMode.set('clan');\n\t\treturn () => activeMode.set(null);\n\t});\n\n\tconst c = $derived(data.clan);\n\tconst fmtDate = (iso: string) =>\n\t\tnew Date(iso).toLocaleDateString('en-US', { month: 'short', day: 'numeric' }).toLowerCase();\n\n\t/** Outcome chip: what happened to THIS clan in that war. */\n\tconst outcome = (w: ClanWarListItem): { text: string; cls: string } => {\n\t\tif (['mustering', 'requested', 'preparing', 'scheduled'].includes(w.status)) return { text: 'live', cls: 'live' };\n\t\tif (w.status === 'fought') return w.won ? { text: `w ${w.score ?? ''}`, cls: 'win' } : { text: `l ${w.score ?? ''}`, cls: 'loss' };\n\t\tif (w.status === 'forfeited' || w.status === 'dodged') {\n\t\t\tif (w.won) return { text: w.status === 'dodged' ? 'they dodged' : 'they no-showed', cls: 'win' };\n\t\t\treturn { text: w.status === 'dodged' ? 'dodged' : 'no-show', cls: 'shame' };\n\t\t}\n\t\tif (w.status === 'declined') return { text: 'declined', cls: 'muted' };\n\t\treturn { text: 'dissolved', cls: 'muted' };\n\t};\n</script>\n\n<svelte:head><title>wars · {c.name} (#{c.tag}) · clans</title></svelte:head>\n\n<main class=\"wars-page\">\n\t<a href=\"/k/{c.tag}\" class=\"back-link\">← #{c.tag}</a>\n\n\t<div class=\"head\">\n\t\t<ClanEmblem tag={c.tag} avatarPath={c.avatarPath} size={52} link={false} />\n\t\t<div class=\"min-w-0\">\n\t\t\t<h1 class=\"title\">war history</h1>\n\t\t\t<div class=\"sub\">{c.name} · <span class=\"v\">{c.warWins}–{c.warLosses}</span>{#if c.warNoshows} · {c.warNoshows} no-show{c.warNoshows === 1 ? '' : 's'}{/if}</div>\n\t\t</div>\n\t</div>\n\n\t{#if data.wars.length === 0}\n\t\t<div class=\"empty\">no wars yet. pick a fight.</div>\n\t{:else}\n\t\t<div class=\"list\">\n\t\t\t{#each data.wars as w (w.code)}\n\t\t\t\t{@const o = outcome(w)}\n\t\t\t\t<a href=\"/k/war/{w.code}\" class=\"row\">\n\t\t\t\t\t<ClanEmblem tag={w.otherTag} avatarPath={w.otherAvatarPath} size={44} link={false} />\n\t\t\t\t\t<div class=\"min-w-0 body\">\n\t\t\t\t\t\t<div class=\"line1\">\n\t\t\t\t\t\t\t<span class=\"role\">{w.role === 'attacker' ? 'raid' : 'defended'}</span>\n\t\t\t\t\t\t\t<span class=\"other truncate\">#{w.otherTag}</span>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class=\"brief truncate\">{w.challenge}</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div class=\"right\">\n\t\t\t\t\t\t<span class=\"chip {o.cls}\">{o.text}</span>\n\t\t\t\t\t\t<span class=\"date\">{fmtDate(w.fightAt ?? w.createdAt)}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</a>\n\t\t\t{/each}\n\t\t</div>\n\t{/if}\n</main>\n\n<style>\n\t.wars-page { max-width: 720px; margin: 0 auto; padding: 84px 18px 120px; }\n\t@media (min-width: 768px) { .wars-page { padding: 100px 20px 120px; } }\n\t.back-link { font-size: 11px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; color: var(--color-muted); text-decoration: none; }\n\t.head { display: flex; align-items: center; gap: 14px; margin-top: 18px; }\n\t.title { font-family: var(--font-display); font-size: 26px; font-weight: 900; letter-spacing: -0.03em; line-height: 1.05; }\n\t.sub { font-size: 13px; color: var(--color-muted); margin-top: 3px; }\n\t.sub .v { color: var(--color-violet); font-weight: 700; }\n\t.empty { margin-top: 26px; border: 1px solid var(--color-border); background: var(--color-surface); border-radius: 14px; padding: 36px; text-align: center; font-size: 13px; color: var(--color-muted); }\n\t.list { display: flex; flex-direction: column; gap: 10px; margin-top: 22px; }\n\t.row { display: flex; align-items: center; gap: 14px; padding: 13px 16px; border-radius: 14px; background: var(--color-surface); border: 1px solid var(--color-border); text-decoration: none; color: inherit; transition: border-color 0.15s; }\n\t.row:hover { border-color: color-mix(in srgb, var(--color-violet) 30%, transparent); }\n\t.body { flex: 1; }\n\t.line1 { display: flex; align-items: center; gap: 8px; }\n\t.role { font-size: 10px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--color-muted); }\n\t.other { font-family: var(--font-display); font-size: 15px; font-weight: 800; color: var(--color-text); }\n\t.brief { font-size: 12px; color: var(--color-muted); margin-top: 3px; }\n\t.right { display: flex; flex-direction: column; align-items: flex-end; gap: 5px; flex-shrink: 0; }\n\t.chip { font-family: var(--font-display); font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; padding: 4px 9px; border-radius: 7px; background: var(--color-surface-2); color: var(--color-muted); border: 1px solid var(--color-border); }\n\t.chip.win { background: var(--color-violet); border-color: var(--color-violet); color: #fff; }\n\t.chip.loss { color: var(--color-text); }\n\t.chip.shame { background: #3a1d24; border-color: #3a1d24; color: var(--color-coral); }\n\t.chip.live { color: var(--color-green); }\n\t.date { font-size: 11px; color: var(--color-muted); }\n</style>\n"],"version":3}