@using AyCode.Blazor.Components.Components @using TIAMWebApp.Shared.Application.Services @inject GooglePlacesService GooglePlacesService

@NullText

@if (Predictions.Count > 0) { } @code { [Parameter] public string NullText { get; set; } [Parameter] public EventCallback AddressChanged { get; set; } private string Address { get; set; } private List Predictions { get; set; } = new(); private PredictionItem SelectedPrediction { get; set; } private async Task OnInputChanged(ChangeEventArgs e) { var input = Address; if (!string.IsNullOrWhiteSpace(input)) { var predictions = await GooglePlacesService.GetPlacePredictionsAsync(input); Predictions = predictions.ConvertAll(p => new PredictionItem { Description = p }); SelectedPrediction = Predictions[0]; } else { Predictions.Clear(); } } private class PredictionItem { public string Description { get; set; } } }