Browse Source

fix(compose-issue): add validation warning

so user knows why the form cannot be submitted
fixes issue
nostr:note1apl888cf3xsnsaaefhw5f8klle6f4wys3hf6ywqjalluw4nvqm7qrdjcmd
master
DanConwayDev 2 years ago
parent
commit
35f8ac1225
No known key found for this signature in database
GPG Key ID: 68E15486D73F75E1
  1. 20
      src/lib/wrappers/ComposeIssue.svelte

20
src/lib/wrappers/ComposeIssue.svelte

@ -17,8 +17,11 @@
$: { $: {
edit_mode = !submitted edit_mode = !submitted
} }
let submit_attempted = false
async function sendIssue(title: string, content: string) { async function sendIssue(title: string, content: string) {
submit_attempted = true
if (title.length < 10) return
if (!$logged_in_user) await login() if (!$logged_in_user) await login()
if (!$logged_in_user) return if (!$logged_in_user) return
let event = new NDKEvent(ndk) let event = new NDKEvent(ndk)
@ -80,9 +83,13 @@
<input <input
type="text" type="text"
bind:value={title} bind:value={title}
class="input-neutral input input-sm input-bordered mb-3 w-full" class="input-neutral input input-sm input-bordered mb-3 w-full border-warning"
class:border-warning={submit_attempted && title.length < 10}
placeholder="title" placeholder="title"
/> />
{#if submit_attempted && title.length < 10}
<div class="text-warning pr-3 text-sm align-middle">title must be at least 10 characters</div>
{/if}
</label> </label>
<label class="form-control w-full"> <label class="form-control w-full">
<div class="label"> <div class="label">
@ -98,12 +105,15 @@
></textarea> ></textarea>
</label> </label>
<div class="flex"> <div class="flex items-center mt-2">
<div class="flex-auto"></div> <div class="flex-auto"></div>
{#if submit_attempted && title.length < 10}
<div class="text-warning pr-3 text-sm align-middle">title must be at least 10 characters</div>
{/if}
<button <button
on:click={() => sendIssue(title, content)} on:click={() => sendIssue(title, content)}
disabled={submitting || title.length < 10} disabled={submitting || (submit_attempted && title.length < 10)}
class="align-right btn btn-primary btn-sm mt-2 align-bottom" class="btn btn-primary btn-sm"
> >
{#if submitting} {#if submitting}
Sending Sending

Loading…
Cancel
Save