<script lang="ts">
import { assets } from '$app/paths';
import { timefmt } from '../../../helpers.js';
import type { Comment } from '../../../helpers.ts';
// export let author = '';
// export let id = '';
export let disc: { closed?: number; n: number } | undefined = undefined;
// export let timestamp: number;
// export let value = '';
// export let value_html = '';
export let owner: string;
export let repo: string;
export let edit: boolean = false;
export let login: string;
export let token: string;
export let uniq: number;
export let comment: Comment = {
author: login,
id: '',
timestamp: 0,
content: '',
content_html: ''
};
</script>
<div class="py-3 flex" id={comment.id}>
<div class="px-3 w-20">
<a href="/{comment.author}">
<img
class="profile-picture-small"
src="/identicon/{comment.author}/small"
alt={comment.author} />
</a>
</div>
<div class="w-full flex">
<div class="border rounded border-neutral-500 w-full">
<div class="flex flex-col px-3 pb-3">
<div class="py-3 flex items-center">
<span class="icon-[tdesign--chat-bubble] w-4 h-4"></span>
<a class="mx-2 author" href="/{comment.author}">{comment.author}</a>
{timefmt(comment.timestamp * 1000)}
{#if comment.id && comment.author == login}
<div class="ms-auto">
<button
class="btn btn-sm btn-primary my-0"
form="edit_comment"
name="edit_comment"
value={comment.id}
on:click={() => (edit = true)}>Edit</button>
<noscript>
<form method="GET" action="#{comment.id}" id="edit_comment"></form>
</noscript>
</div>
{/if}
</div>
{#if edit}
{#if disc}
<form
method="POST"
action="/api/discussion/{owner}/{repo}/{disc.n}"
enctype="application/x-www-form-urlencoded">
<input type="hidden" name="uniq" value={uniq} />
<input type="hidden" name="token" value={token} />
{#if comment.id.length}
<input type="hidden" name="edit_comment" value={comment.id} />
{/if}
<textarea
class="textarea w-full"
name="new_discussion_comment"
rows="8"
placeholder=""
value={comment.content}></textarea>
<div class="py-1">
<button class="btn btn-secondary btn-sm my-1">
{#if comment.id.length}Update{:else}Comment{/if}
</button>
{#if !comment.id.length}
{#if disc.closed}
<button class="btn btn-secondary btn-sm m-1" name="action" value="reopen"
>Comment and reopen
</button>
{:else}
<button class="btn btn-secondary btn-sm m-1" name="action" value="close"
>Comment and close</button>
{/if}
{/if}
</div>
</form>
{:else}
<textarea
class="textarea w-full"
name="new_discussion_comment"
rows="8"
placeholder=""
value={comment.content}></textarea>
{/if}
{:else}
{@html comment.content_html}
{/if}
</div>
</div>
</div>
</div>
<style>
.profile-picture-small {
width: 4em;
background-color: white;
border-radius: 50%;
}
</style>