@using AyCode.Blazor.Components.Components @using AyCode.Core.Helpers @using TIAMWebApp.Shared.Application.Services @inject GooglePlacesService GooglePlacesService
@if (Predictions.Count > 0) { } else {

No address found

}
@code { [Parameter] public string NullText { get; set; } [Parameter] public EventCallback AddressChanged { get; set; } [Parameter] public string CssClass { get; set; } private string Address { get; set; } private List Predictions { get; set; } = new(); private PredictionItem selectedPrediction { get; set; } public PredictionItem SelectedPrediction { get => selectedPrediction; set { SetNewDestination(value.Description).Forget(); selectedPrediction = value; } } public async Task SetNewDestination(string address) { await AddressChanged.InvokeAsync(address); } 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(); } } public class PredictionItem { public string Description { get; set; } } }