feat: add rendering for library shelves (#359)
Co-authored-by: Aditya Chaudhary <30+useradityaa@noreply.coracle.social>
This commit is contained in:
parent
fc768b6393
commit
f411973409
2 changed files with 19 additions and 1 deletions
|
|
@ -1,11 +1,12 @@
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import type {ComponentProps} from "svelte"
|
import type {ComponentProps} from "svelte"
|
||||||
import {EVENT_TIME, ZAP_GOAL, THREAD, CLASSIFIED, POLL} from "@welshman/util"
|
import {EVENT_TIME, ZAP_GOAL, THREAD, CLASSIFIED, POLL, PINBOARD} from "@welshman/util"
|
||||||
import NoteContentMinimalEventTime from "@app/components/NoteContentMinimalEventTime.svelte"
|
import NoteContentMinimalEventTime from "@app/components/NoteContentMinimalEventTime.svelte"
|
||||||
import NoteContentMinimalThread from "@app/components/NoteContentMinimalThread.svelte"
|
import NoteContentMinimalThread from "@app/components/NoteContentMinimalThread.svelte"
|
||||||
import NoteContentMinimalClassified from "@app/components/NoteContentMinimalClassified.svelte"
|
import NoteContentMinimalClassified from "@app/components/NoteContentMinimalClassified.svelte"
|
||||||
import NoteContentMinimalGoal from "@app/components/NoteContentMinimalGoal.svelte"
|
import NoteContentMinimalGoal from "@app/components/NoteContentMinimalGoal.svelte"
|
||||||
import NoteContentMinimalPoll from "@app/components/NoteContentMinimalPoll.svelte"
|
import NoteContentMinimalPoll from "@app/components/NoteContentMinimalPoll.svelte"
|
||||||
|
import NoteContentMinimalBoard from "@app/components/NoteContentMinimalBoard.svelte"
|
||||||
import ContentMinimal from "@app/components/ContentMinimal.svelte"
|
import ContentMinimal from "@app/components/ContentMinimal.svelte"
|
||||||
|
|
||||||
const props: ComponentProps<typeof ContentMinimal> = $props()
|
const props: ComponentProps<typeof ContentMinimal> = $props()
|
||||||
|
|
@ -22,6 +23,8 @@
|
||||||
<NoteContentMinimalGoal {...props} />
|
<NoteContentMinimalGoal {...props} />
|
||||||
{:else if props.event.kind === POLL}
|
{:else if props.event.kind === POLL}
|
||||||
<NoteContentMinimalPoll {...props} />
|
<NoteContentMinimalPoll {...props} />
|
||||||
|
{:else if props.event.kind === PINBOARD}
|
||||||
|
<NoteContentMinimalBoard {...props} />
|
||||||
{:else}
|
{:else}
|
||||||
<ContentMinimal {...props} />
|
<ContentMinimal {...props} />
|
||||||
{/if}
|
{/if}
|
||||||
|
|
|
||||||
15
src/app/components/NoteContentMinimalBoard.svelte
Normal file
15
src/app/components/NoteContentMinimalBoard.svelte
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
<script lang="ts">
|
||||||
|
import type {ComponentProps} from "svelte"
|
||||||
|
import {Pinboard} from "@welshman/domain"
|
||||||
|
import ContentMinimal from "@app/components/ContentMinimal.svelte"
|
||||||
|
import {reader} from "@app/core"
|
||||||
|
|
||||||
|
const props: ComponentProps<typeof ContentMinimal> = $props()
|
||||||
|
|
||||||
|
const board = reader(Pinboard)(props.event)
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<span class="text-sm">{board?.title() || "Untitled shelf"}</span>
|
||||||
|
{#if board?.description()}
|
||||||
|
<span class="truncate min-w-0 block opacity-70">{board.description()}</span>
|
||||||
|
{/if}
|
||||||
Loading…
Reference in a new issue