Spaces:
Configuration error
Configuration error
File size: 2,212 Bytes
e8a6c67 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 | <script lang="ts">
import type { Citation } from '$lib/types/claim';
import TierGlyph from '$lib/components/glyphs/TierGlyph.svelte';
import { citations as cstore } from '$lib/stores/citations.svelte';
interface Props { citations: Record<string, Citation>; }
let { citations }: Props = $props();
let entries = $derived(Object.values(citations).sort((a, b) => a.n - b.n));
</script>
<aside class="citation-drawer" aria-label="Citations">
<div class="citation-drawer-head">
<span class="section-label">Citations · {entries.length}</span>
<span class="citation-drawer-meta">live · primary sources</span>
</div>
<ol class="citation-list">
{#each entries as c (c.id)}
<li
id="cite-{c.id}"
class="citation-item"
class:is-active={cstore.active === c.id}
>
<span class="citation-num">[{c.n}]</span>
<div class="citation-body">
<div class="citation-line-1">
<TierGlyph tier={c.tier} size={10} color="var(--tier-{c.tier})" />
<span class="citation-source">{c.source}</span>
<span class="citation-vintage">v. {c.vintage}</span>
</div>
<div class="citation-title">
{#if c.url && c.url.startsWith('http')}
<a href={c.url} target="_blank" rel="noopener noreferrer">{c.title}</a>
{:else}
{c.title}
{/if}
</div>
<div class="citation-meta">
<span class="citation-docid">{c.docId}</span>
<span class="citation-retrieved">retr. {c.retrieved}</span>
</div>
</div>
</li>
{/each}
</ol>
<div class="citation-drawer-foot">
<span class="section-label">Trust signals</span>
<p class="citation-foot-copy">
All foundation models Apache-2.0. All data from public-record federal,
state, and city sources. No commercial APIs contacted at runtime.
</p>
</div>
</aside>
<style>
.citation-drawer :global(a) {
color: inherit;
border-bottom: 1px solid var(--rule-soft);
text-decoration: none;
}
.citation-drawer :global(a:hover) {
border-bottom-color: var(--accent);
color: var(--accent);
}
</style>
|