diff --git a/src/lib/elements/forms/inputSelect.svelte b/src/lib/elements/forms/inputSelect.svelte index f0cf489bf..14bd7505f 100644 --- a/src/lib/elements/forms/inputSelect.svelte +++ b/src/lib/elements/forms/inputSelect.svelte @@ -27,6 +27,14 @@ error = element.validationMessage; }; + $: if (element && required && !value) { + element.setCustomValidity('This field is required'); + } + + $: if (element && required && value) { + element.setCustomValidity(''); + } + $: if (value) { error = null; } diff --git a/src/routes/console/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/attributes/enum.svelte b/src/routes/console/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/attributes/enum.svelte index 0499984d0..839191430 100644 --- a/src/routes/console/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/attributes/enum.svelte +++ b/src/routes/console/project-[project]/databases/database-[database]/collection-[collection]/document-[document]/attributes/enum.svelte @@ -7,6 +7,7 @@ export let value: string; export let attribute: Models.AttributeEnum; export let optionalText: string | undefined = undefined; + export let required = false; $: options = attribute.elements.map((element) => { return { @@ -22,5 +23,6 @@ {id} {label} {optionalText} + required={attribute.required} placeholder="Select a value" showLabel={!!label?.length} /> diff --git a/src/routes/console/project-[project]/functions/function-[function]/[[page]]/+page.svelte b/src/routes/console/project-[project]/functions/function-[function]/[[page]]/+page.svelte index abf5c880c..af41f1d46 100644 --- a/src/routes/console/project-[project]/functions/function-[function]/[[page]]/+page.svelte +++ b/src/routes/console/project-[project]/functions/function-[function]/[[page]]/+page.svelte @@ -156,7 +156,7 @@