diff --git a/src/lib/radio/PublicRadio.svelte b/src/lib/radio/PublicRadio.svelte new file mode 100644 index 0000000..c880d59 --- /dev/null +++ b/src/lib/radio/PublicRadio.svelte @@ -0,0 +1,1103 @@ + + +{#snippet note(text: string)} + {#each parts(text) as q, qi (qi)}{#if q.url}{q.x}{:else}{q.x}{/if}{/each} +{/snippet} + +{#snippet antenna()} + +{/snippet} + +
+ stanrunge.dev » trackers » + {c.title} » {c.crumb} +
+{c.preview} {c.back}
+ {/if} + {#if soonList.length} ++ {c.latest} + {#each soonList.slice(0, 3) as s, i (s.key)}{#if i} · {/if}{s.what} + {dayLabel(s.at)} {fmtTime(s.at)} + {c.on} {s.freq}{/each} +
+ {/if} + + + +{nextNet.freq}
++ {nextNet.what} · {dayLabel(nextNet.at)} + {fmtTime(nextNet.at)} +
+{nextNet.at <= now ? t.onNow : h.until(nextNet.at, now)}
+| {k} | {v} |
|---|
| {c.mhz} | {c.stationCol} |
|---|---|
| {fq(f.freqHz)} {f.mode} | +{f.name}{#if f.marineCh} ({t.channel} {f.marineCh}){/if} | +
{c.timesNl}
+ {#if soonList.length} +| {c.when} | {c.what} |
|---|---|
| {dayLabel(s.at)} {fmtTime(s.at)} {s.at <= now ? t.onNow : h.until(s.at, now)} |
+ {s.what}{#if s.freq} {s.freq}{/if} |
+
{t.nothingScheduled}
+ {/if} +| {c.name} | {c.freq} | {c.when} |
|---|---|---|
| {n.name}{#if n.notes} {@render note(n.notes)}{/if} |
+ {#if f}{fq(f.freqHz)} {f.mode}{#if f.marineCh} + · {t.channel} {f.marineCh}{/if}{/if} |
+ {h.daysLabel(n.days)} {n.times.length + ? n.times.map((x) => x.slice(0, 5)).join(', ') + : t.timeUnknown} {t.kinds[n.kind] ?? n.kind} |
+
{t.noNets}
+ {/if} ++ {c.issHelp} live.ariss.org +
+ {#if nextPasses.length} +| {c.date} | {c.start} | {c.max} | {c.end} |
|---|---|---|---|
| {dayLabel(p.startAt)} | +{fmtTime(p.startAt)} | +{fmtTime(p.maxAt)} {Math.round(p.maxEl)}° {dirs(p)}{#if p.sunlit} {c.eyeShort}{/if} |
+ {fmtTime(p.endAt)} | +
{t.noPasses}
+ {/if} +{c.freqHelp}
+ {#each bands as x (x.band)} +| {c.mhz} | {#if x.band === 'marine'}{c.ch} | {/if}{c.stationCol} | {c.mem} |
|---|---|---|---|
| {fq(f.freqHz)} {f.mode} |
+ {#if x.band === 'marine'}{f.marineCh ?? ''} | {/if} +{f.name}{#if f.location}
+ · {f.location}{/if}{#if f.notes} {@render note(f.notes)}{/if} |
+ {f.channels.join(', ')} | +
{t.scanHelp}
+| {c.bank} | {c.range} | {c.used} | {c.content} |
|---|---|---|---|
| {b.b} | +{b.from}–{b.to} | +{b.n}/{PER_BANK} | +{b.what.join(', ') || '—'} | +
| {k} | {v} |
|---|
| {c.when} | {c.freq} | {c.what} |
|---|---|---|
| {h.fmtDateTime(l.heardAt)} | +{hz ? fq(hz) : ''} + {l.mode ?? f?.mode ?? ''} | +{l.what}{#if l.signal} {t.signal(l.signal)}{/if} |
+
{c.checked(dateFmt(LINKS_CHECKED))}
+ {#each LINK_CATEGORIES as cat (cat.id)} +| {@render antenna()} | +
+ {#if external(l.url)}
+ {l.title}
+ {:else}
+ {l.title}
+ {/if}
+ {l.about[lang]} + {#if l.note} {l.note[lang]}{/if} + |
+
+ {c[l.status]}
+ {#if l.archive} {c.archive}{/if} + {via(l)} + |
+
{c.footer} 73! · {c.top}
+