@using System.Linq.Expressions
@using TIAMWebApp.Shared.Application.Utility
@inject LogToBrowserConsole logToBrowserConsole
Please type an address or swipe to select from preset destinations!
@code {
[Parameter]
public string OwlId { get; set; }
public string TextValue { get; set; } = null;
int? InputDelay { get; set; } = 3500;
BindValueMode BindValueMode { get; set; } = BindValueMode.OnInput;
bool BindDelayEnabled { get { return BindValueMode == BindValueMode.OnDelayedInput; } }
public int SliderElementId = 0;
string content = "";
[Parameter]
public EventCallback OnSliderChanged { get; set; }
[Inject]
public IJSRuntime JSRuntime { get; set; }
protected override void OnParametersSet()
{
logToBrowserConsole.LogToBC($"SliderItemSelector is initialized with OwlId: {OwlId}");
base.OnParametersSet();
}
protected override void OnAfterRender(bool firstRender)
{
if(firstRender)
{
var dotNetObjRef = DotNetObjectReference.Create(this);
JSRuntime.InvokeVoidAsync("setOwlId", OwlId);
JSRuntime.InvokeVoidAsync("InitOwl", OwlId);
JSRuntime.InvokeVoidAsync("CStoJSCall", dotNetObjRef);
}
}
[JSInvokable]
public void ShowCoordinates(string coordinates, string itemId)
{
logToBrowserConsole.LogToBC($"Slider is changing: {coordinates}, {itemId}");
//content = coordinates + "item = " + itemId;
SliderElementId = Convert.ToInt32(itemId);
OnSliderChanged.InvokeAsync(itemId);
/*StateHasChanged();*/
}
}