public async void Should_SetOptionsAsync()
        {
            var id        = "id";
            var animation = new DropMarkersAnimation(id, _jsRuntime.Object);
            var options   = new DropMarkersAnimationOptions();
            await animation.SetOptionsAsync(options);

            _jsRuntime.Verify(runtime => runtime.InvokeVoidAsync(Constants.JsConstants.Methods.Animation.SetOptions.ToAnimationNamespace(), id, options), Times.Once);
            _jsRuntime.VerifyNoOtherCalls();
        }
        public async ValueTask <IDropMarkersAnimation> DropMarkerAsync(HtmlMarker marker, decimal?height = null, DropMarkersAnimationOptions options = default)
        {
            _logger?.LogAzureMapsControlInfo(AzureMapLogEvent.AnimationService_DropMarkers, "Calling DropMarkersAsync");

            Require.NotNull(marker, nameof(marker));
            return(await DropMarkersAsync(new[] { marker }, height, options));
        }
        public async ValueTask <IDropMarkersAnimation> DropMarkersAsync(IEnumerable <HtmlMarker> markers, decimal?height = null, DropMarkersAnimationOptions options = default)
        {
            _logger?.LogAzureMapsControlInfo(AzureMapLogEvent.AnimationService_DropMarkers, "Calling DropMarkersAsync");

            Require.NotNull(markers, nameof(markers));

            _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_DropMarkers, "Markers", markers);
            _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_DropMarkers, "Height", height);
            _logger?.LogAzureMapsControlDebug(AzureMapLogEvent.AnimationService_DropMarkers, "Options", options);
            _mapService.Map.HtmlMarkers = (_mapService.Map.HtmlMarkers ?? Array.Empty <HtmlMarker>()).Concat(markers);

            var parameters = _mapService.Map.GetHtmlMarkersCreationParameters(markers);
            var animation  = new DropMarkersAnimation(Guid.NewGuid().ToString(), _jsRuntime);
            await _jsRuntime.InvokeVoidAsync(Constants.JsConstants.Methods.Animation.DropMarkers.ToAnimationNamespace(), animation.Id, parameters.MarkerOptions, height, options, parameters.InvokeHelper);

            animation.Disposed = options.DisposeOnComplete.GetValueOrDefault();
            return(animation);
        }