public async Task <ActionResult <string> > TranslateProductName([FromQuery] string language, Guid id) { var product = await _productRepository.GetProductAsync(id); if (product == null) { return(NotFound("Could not find product")); } var translatedProductName = await _translateService.TranslateAsync(language, product.Name); return(translatedProductName); }
private async Task TranslateTokenAsync(LoadingTextBlock block) { if (_loadingMore || block.PlaceholderText == null || block.Tag != null) { return; } _loadingMore = true; // Unsubscribe to disable load more block.EffectiveViewportChanged -= Block_EffectiveViewportChanged; block.Tag = new object(); var ticks = Environment.TickCount; var response = await _translateService.TranslateAsync(block.PlaceholderText, _fromLanguage, _toLanguage); if (response is Translation translation) { var diff = Environment.TickCount - ticks; if (diff < 1000) { await Task.Delay(1000 - diff); } block.Text = translation.Text; SubtitleFrom.Text = LanguageName(translation.SourceLanguage, out _); } else if (response is Error error) { if (error.Code == 429) { block.Text = Strings.Resources.TranslationFailedAlert1; SubtitleFrom.Text = LanguageName(_fromLanguage == LANG_AUTO ? _toLanguage : _fromLanguage, out _); } else { block.Text = Strings.Resources.TranslationFailedAlert2; SubtitleFrom.Text = LanguageName(_fromLanguage == LANG_AUTO ? _toLanguage : _fromLanguage, out _); } } _loadingMore = false; }
public async Task <TranslateWord> TranslateAsync( TranslateWord word, TranslateLanguages translatedLanguage) => await _service.TranslateAsync(word, translatedLanguage);