refactor(clock_in): reorganize validation logic into separate validator files

This commit is contained in:
Achintha Isuru
2026-03-14 20:03:30 -04:00
parent 28a219bbea
commit aa556c4a05
8 changed files with 17 additions and 17 deletions

View File

@@ -1,5 +1,5 @@
import 'clock_in_validation_context.dart'; import '../clock_in_validation_context.dart';
import 'clock_in_validation_result.dart'; import '../clock_in_validation_result.dart';
/// Abstract interface for a single step in the clock-in validation pipeline. /// Abstract interface for a single step in the clock-in validation pipeline.
/// ///

View File

@@ -1,5 +1,5 @@
import 'clock_in_validation_context.dart'; import '../clock_in_validation_context.dart';
import 'clock_in_validation_result.dart'; import '../clock_in_validation_result.dart';
import 'clock_in_validator.dart'; import 'clock_in_validator.dart';
/// Runs a list of [ClockInValidator]s in order, short-circuiting on first failure. /// Runs a list of [ClockInValidator]s in order, short-circuiting on first failure.

View File

@@ -1,5 +1,5 @@
import 'clock_in_validation_context.dart'; import '../clock_in_validation_context.dart';
import 'clock_in_validation_result.dart'; import '../clock_in_validation_result.dart';
import 'clock_in_validator.dart'; import 'clock_in_validator.dart';
/// Validates that geofence requirements are satisfied before clock-in. /// Validates that geofence requirements are satisfied before clock-in.

View File

@@ -1,5 +1,5 @@
import 'clock_in_validation_context.dart'; import '../clock_in_validation_context.dart';
import 'clock_in_validation_result.dart'; import '../clock_in_validation_result.dart';
import 'clock_in_validator.dart'; import 'clock_in_validator.dart';
/// Validates that override notes are provided when required. /// Validates that override notes are provided when required.

View File

@@ -1,7 +1,7 @@
import 'package:intl/intl.dart'; import 'package:intl/intl.dart';
import 'package:staff_clock_in/src/domain/validators/clock_in_validation_context.dart';
import 'package:staff_clock_in/src/domain/validators/clock_in_validation_result.dart';
import 'clock_in_validation_context.dart';
import 'clock_in_validation_result.dart';
import 'clock_in_validator.dart'; import 'clock_in_validator.dart';
/// Validates that the current time falls within the allowed window. /// Validates that the current time falls within the allowed window.

View File

@@ -10,7 +10,7 @@ import '../../../domain/usecases/get_attendance_status_usecase.dart';
import '../../../domain/usecases/get_todays_shift_usecase.dart'; import '../../../domain/usecases/get_todays_shift_usecase.dart';
import '../../../domain/validators/clock_in_validation_context.dart'; import '../../../domain/validators/clock_in_validation_context.dart';
import '../../../domain/validators/clock_in_validation_result.dart'; import '../../../domain/validators/clock_in_validation_result.dart';
import '../../../domain/validators/composite_clock_in_validator.dart'; import '../../../domain/validators/validators/composite_clock_in_validator.dart';
import '../geofence/geofence_bloc.dart'; import '../geofence/geofence_bloc.dart';
import '../geofence/geofence_event.dart'; import '../geofence/geofence_event.dart';
import '../geofence/geofence_state.dart'; import '../geofence/geofence_state.dart';

View File

@@ -11,7 +11,7 @@ import '../bloc/clock_in/clock_in_event.dart';
import '../bloc/geofence/geofence_bloc.dart'; import '../bloc/geofence/geofence_bloc.dart';
import '../bloc/geofence/geofence_state.dart'; import '../bloc/geofence/geofence_state.dart';
import '../../domain/validators/clock_in_validation_context.dart'; import '../../domain/validators/clock_in_validation_context.dart';
import '../../domain/validators/time_window_validator.dart'; import '../../domain/validators/validators/time_window_validator.dart';
import '../strategies/check_in_interaction.dart'; import '../strategies/check_in_interaction.dart';
import '../strategies/nfc_check_in_interaction.dart'; import '../strategies/nfc_check_in_interaction.dart';
import '../strategies/swipe_check_in_interaction.dart'; import '../strategies/swipe_check_in_interaction.dart';

View File

@@ -12,11 +12,11 @@ import 'domain/usecases/clock_in_usecase.dart';
import 'domain/usecases/clock_out_usecase.dart'; import 'domain/usecases/clock_out_usecase.dart';
import 'domain/usecases/get_attendance_status_usecase.dart'; import 'domain/usecases/get_attendance_status_usecase.dart';
import 'domain/usecases/get_todays_shift_usecase.dart'; import 'domain/usecases/get_todays_shift_usecase.dart';
import 'domain/validators/clock_in_validator.dart'; import 'domain/validators/validators/clock_in_validator.dart';
import 'domain/validators/composite_clock_in_validator.dart'; import 'domain/validators/validators/composite_clock_in_validator.dart';
import 'domain/validators/geofence_validator.dart'; import 'domain/validators/validators/geofence_validator.dart';
import 'domain/validators/override_notes_validator.dart'; import 'domain/validators/validators/override_notes_validator.dart';
import 'domain/validators/time_window_validator.dart'; import 'domain/validators/validators/time_window_validator.dart';
import 'presentation/bloc/clock_in/clock_in_bloc.dart'; import 'presentation/bloc/clock_in/clock_in_bloc.dart';
import 'presentation/bloc/geofence/geofence_bloc.dart'; import 'presentation/bloc/geofence/geofence_bloc.dart';
import 'presentation/pages/clock_in_page.dart'; import 'presentation/pages/clock_in_page.dart';