This commit is contained in:
tree 2022-04-11 21:28:32 +02:00
rodič bcc8ee3ad3
revize b3db1527b8
5 změnil soubory, kde provedl 35 přidání a 7 odebrání

Zobrazit soubor

@ -5,8 +5,11 @@
export let customSize = null;
import SvelteMarkdown from 'svelte-markdown';
import Link from '$lib/Link.svelte';
import { page } from '$app/stores';
const renderers = { link: Link }
let imagesRoot = 'https://spec.utxo.cz/22/photos'
/*if ($page.url.hostname === 'localhost') {
imagesRoot = 'http://localhost:8000/22/photos'
@ -78,7 +81,7 @@
<a href="/lide?id={speaker.id}" on:mouseover={mouseOver} on:mouseleave={mouseLeave}><img src={currentImg} class="w-36 sm:w-40 rounded-full m-auto shadow-xl" alt={speaker.name} /></a>
<div class="mt-4 text-sm text-blue-web uppercase font-bold"><a href="/lide?id={speaker.id}">{speaker.name}</a> {country}</div>
{#if speaker.bio || speaker.orgs}
<div class="mt-1 text-xs text-blue-web italic"><SvelteMarkdown source={speaker.bio || speaker.orgs} /></div>
<div class="mt-1 text-xs text-blue-web italic"><SvelteMarkdown source={speaker.bio || speaker.orgs} renderers={renderers}/></div>
{/if}
</div>
{/if}

6
src/lib/Link.svelte Normal file
Zobrazit soubor

@ -0,0 +1,6 @@
<script>
export let href = ''
export let title = undefined
</script>
<a {href} {title} class="underline hover:no-underline" target="_blank"><slot></slot></a>

Zobrazit soubor

@ -6,6 +6,8 @@
import { bundle, userData } from '$lib/stores.js';
import Avatar from '$lib/Avatar.svelte';
import SvelteMarkdown from 'svelte-markdown';
import Link from '$lib/Link.svelte';
const renderers = { link: Link }
let onlyLead = true
let onlyLeadPreview = false
@ -124,7 +126,7 @@ Zažijte mysteriózní atmosféru komplexu na 1.ročníku konference UTXO.22. Č
{#each $bundle.spec.faqs as item}
<div class="mb-5 break-inside-avoid-column bg-blue-100/60 rounded-xl px-8 py-6 text-left transition-all box-shadow-light overflow-visible">
<div class="mb-4 font-bold">{item.question}</div>
<SvelteMarkdown source={item.answer} />
<SvelteMarkdown source={item.answer} renderers={renderers} />
</div>
{/each}
</div>

Zobrazit soubor

@ -3,7 +3,6 @@
</script>
<script>
import SvelteMarkdown from 'svelte-markdown';
import { goto } from '$app/navigation';
import Avatar from '$lib/Avatar.svelte';
@ -11,6 +10,9 @@
import { onMount, beforeUpdate } from 'svelte';
import { page } from '$app/stores';
import { bundle } from '$lib/stores.js';
import SvelteMarkdown from 'svelte-markdown';
import Link from '$lib/Link.svelte';
const renderers = { link: Link }
$: id = getId($page.url.search)
$: s = $bundle ? $bundle.spec.speakers.find(s => s.id === id) : null
@ -55,20 +57,28 @@
<div class="mt-1"><span class="text-xs">aka</span> <span class="font-bold">{s.nickname}</span></div>
{/if}
{#if s.bio}
<div class="mt-4 text-blue-web italic"><SvelteMarkdown source={s.bio} /></div>
<div class="mt-4 text-blue-web italic"><SvelteMarkdown source={s.bio} renderers={renderers} /></div>
{/if}
{#if s.orgs}
<div class="mt-4 text-blue-web links"><SvelteMarkdown source={s.orgs} /></div>
<div class="mt-4 text-blue-web links"><SvelteMarkdown source={s.orgs} renderers={renderers} /></div>
{/if}
<div class="mt-4">Sekce: {s.tracks.map(t => trackRender(t)).join(', ')}</div>
{#if s.twitter}
<div class="mt-2">Twitter: <a href="https://twitter.com/{s.twitter}" target="_blank" class="font-bold">@{s.twitter}</a></div>
{/if}
{#if s.linkedin}
<div class="mt-2">LinkedIn: <a href="https://linkedin.com/in/{s.twitter}" target="_blank" class="font-bold">@{s.linkedin}</a></div>
{/if}
{#if s.web && s.web.url}
<div class="mt-2">Web: <a href="{s.web.url}" target="_blank" class="font-bold">{s.web.name || s.web.url.replace(/^https?:\/\//, '')}</a></div>
{/if}
</div>
</div>
{#if s.desc}
<div class="mt-6">
<SvelteMarkdown source={s.desc} renderers={renderers} />
</div>
{/if}
<div class="mt-6">
<h2 class="uppercase mb-4 text-md">Události ({ events.length })</h2>
<div>

Zobrazit soubor

@ -3,14 +3,16 @@
</script>
<script>
import SvelteMarkdown from 'svelte-markdown';
import { page } from '$app/stores';
import { goto } from '$app/navigation';
import { onMount } from 'svelte';
import { bundle, userData } from '$lib/stores.js';
import EventTypeLabel from '$lib/EventTypeLabel.svelte';
import Avatar from '$lib/Avatar.svelte';
import SvelteMarkdown from 'svelte-markdown';
import Link from '$lib/Link.svelte';
const renderers = { link: Link }
$: id = getId($page.url.search)
$: e = $bundle ? $bundle.spec.events.find(ev => ev.id === id) : null
@ -60,5 +62,10 @@
{/each}
</div>
{/if}
<div class="mt-8">
{#if e.description}
<SvelteMarkdown source={e.description} renderers={renderers}/>
{/if}
</div>
{/if}
</section>