Edit VS-Duel

@if (vsDuelForm) {

@if (df['opponentName'].invalid && (df['opponentName'].dirty || !df['opponentName'].untouched)) {
@if (df['opponentName'].hasError('required')) {

Opponent Name is required

} @if (df['opponentName'].hasError('maxlength')) {

Maximum 150 characters allowed

}
}
@if (df['opponentServer'].invalid && (df['opponentServer'].dirty || !df['opponentServer'].untouched)) {
@if (df['opponentServer'].hasError('required')) {

Opponent server is required

}
}
@if (df['opponentPower'].invalid && (df['opponentPower'].dirty || !df['opponentPower'].untouched)) {
@if (df['opponentPower'].hasError('required')) {

Opponent power is required

}
}
@if (df['opponentSize'].invalid && (df['opponentSize'].dirty || !df['opponentSize'].untouched)) {
@if (df['opponentSize'].hasError('required')) {

Opponent size is required

}
}
@if (df['opponentSize'].invalid && (df['opponentSize'].dirty || !df['opponentSize'].untouched)) {
@if (df['opponentSize'].hasError('required')) {

Opponent size is required

}
}

@for (participant of vsDuelParticipants.controls; track participant; let i=$index) {
@if (participant.get('weeklyPoints')?.invalid && (participant.get('weeklyPoints')?.touched || participant.get('weeklyPoints')?.dirty)) {
@if (participant.get('weeklyPoints')?.hasError('required')){

Weekly points is required

} @if (participant.get('weeklyPoints')?.hasError('pattern')){

Weekly points must not be less than 0

}
}
}
}