aboutsummaryrefslogtreecommitdiffstats
path: root/code/app/src/lib/components
diff options
context:
space:
mode:
authorivarlovlie <git@ivarlovlie.no>2022-11-17 16:13:14 +0100
committerivarlovlie <git@ivarlovlie.no>2022-11-17 16:16:45 +0100
commitb60a027a4ab9203388470ac51114638983a183da (patch)
treee1bf22a068693e163a8b0fe3ac10199c5b27cca6 /code/app/src/lib/components
parent63e849c4dbb3e3c8771d14a309edf5083c672f74 (diff)
downloadgreatoffice-b60a027a4ab9203388470ac51114638983a183da.tar.xz
greatoffice-b60a027a4ab9203388470ac51114638983a183da.zip
feat: Support multiple errors
Diffstat (limited to 'code/app/src/lib/components')
-rw-r--r--code/app/src/lib/components/input.svelte12
1 files changed, 9 insertions, 3 deletions
diff --git a/code/app/src/lib/components/input.svelte b/code/app/src/lib/components/input.svelte
index 5d38597..ac01348 100644
--- a/code/app/src/lib/components/input.svelte
+++ b/code/app/src/lib/components/input.svelte
@@ -1,7 +1,6 @@
<script lang="ts">
import pwKey from "$actions/pwKey";
import { random_string } from "$lib/helpers";
- import { htmlLangAttributeDetector } from "typesafe-i18n/detectors";
import { ExclamationCircleIcon } from "./icons";
export let label: string | undefined = undefined;
@@ -13,6 +12,7 @@
export let placeholder: string | undefined = undefined;
export let helpText: string | undefined = undefined;
export let errorText: string | undefined = undefined;
+ export let errors: Array<string> | undefined = undefined;
export let disabled = false;
export let hideLabel = false;
export let cornerHint: string | undefined = undefined;
@@ -98,9 +98,15 @@
{helpText}
</p>
{/if}
- {#if errorText}
+ {#if errorText || errors?.length === 1}
<p class="mt-2 text-sm text-red-600" id={ariaErrorDescribedBy}>
- {errorText}
+ {errorText ?? errors[0]}
</p>
+ {:else if errors && errors.length}
+ <ul class="mt-2 list-disc" id={ariaErrorDescribedBy}>
+ {#each errors as error}
+ <li class="text-sm text-red-600">{error}</li>
+ {/each}
+ </ul>
{/if}
</div>