mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Alerting: Fix validation of selected contact point being required in the alert form when simplified routing (#80565)
Fix validation of selected contact point being required in the alert rule form
This commit is contained in:
parent
d3a89a28fa
commit
ae23cd7cf7
@ -16,12 +16,7 @@ export interface ContactPointSelectorProps {
|
|||||||
}
|
}
|
||||||
export function ContactPointSelector({ alertManager, contactPoints, onSelectContactPoint }: ContactPointSelectorProps) {
|
export function ContactPointSelector({ alertManager, contactPoints, onSelectContactPoint }: ContactPointSelectorProps) {
|
||||||
const styles = useStyles2(getStyles);
|
const styles = useStyles2(getStyles);
|
||||||
const {
|
const { control, watch } = useFormContext<RuleFormValues>();
|
||||||
register,
|
|
||||||
control,
|
|
||||||
formState: { errors },
|
|
||||||
watch,
|
|
||||||
} = useFormContext<RuleFormValues>();
|
|
||||||
|
|
||||||
const options = contactPoints.map((receiver) => {
|
const options = contactPoints.map((receiver) => {
|
||||||
const integrations = receiver?.grafana_managed_receiver_configs;
|
const integrations = receiver?.grafana_managed_receiver_configs;
|
||||||
@ -39,11 +34,7 @@ export function ContactPointSelector({ alertManager, contactPoints, onSelectCont
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<Stack direction="column">
|
<Stack direction="column">
|
||||||
<Field
|
<Field label="Contact point">
|
||||||
label="Contact point"
|
|
||||||
{...register(`contactPoints.${alertManager}.selectedContactPoint`, { required: true })}
|
|
||||||
invalid={!!errors.contactPoints?.[alertManager]?.selectedContactPoint}
|
|
||||||
>
|
|
||||||
<InputControl
|
<InputControl
|
||||||
render={({ field: { onChange, ref, ...field }, fieldState: { error } }) => (
|
render={({ field: { onChange, ref, ...field }, fieldState: { error } }) => (
|
||||||
<>
|
<>
|
||||||
@ -65,9 +56,10 @@ export function ContactPointSelector({ alertManager, contactPoints, onSelectCont
|
|||||||
width={50}
|
width={50}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
{error && <FieldValidationMessage>{'Contact point is required.'}</FieldValidationMessage>}
|
{error && <FieldValidationMessage>{error.message}</FieldValidationMessage>}
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
|
rules={{ required: { value: true, message: 'Contact point is required.' } }}
|
||||||
control={control}
|
control={control}
|
||||||
name={`contactPoints.${alertManager}.selectedContactPoint`}
|
name={`contactPoints.${alertManager}.selectedContactPoint`}
|
||||||
/>
|
/>
|
||||||
|
Loading…
Reference in New Issue
Block a user