setupServiceLocator function

Future<void> setupServiceLocator()

Implementation

Future<void> setupServiceLocator() async {
  await _initLock.synchronized(() {
    if (_isInitialized) {
      return; // Prevent double initialization
    }

    getIt
      ..registerFactory<CheckNumeric>(() => CheckNumeric())
      ..registerSingleton<FormUiBuilderRepository>(
        FormUiBuilderRepositoryImpl(),
      )
      ..registerSingleton<BuildParameterMap>(BuildParameterMap())
      ..registerSingleton<ValidateForm>(ValidateForm())
      ..registerSingleton<BuildFormLogicBundle>(
        BuildFormLogicBundle(repository: getIt(), buildParameterMap: getIt()),
      );

    _isInitialized = true;
  });
}