2024-07-28 09:20:00 +00:00
|
|
|
@page "/assistant/translation"
|
2024-07-14 19:46:17 +00:00
|
|
|
@using AIStudio.Settings
|
|
|
|
@using AIStudio.Tools
|
|
|
|
@inherits AssistantBaseCore
|
|
|
|
|
2024-08-01 19:53:28 +00:00
|
|
|
@if (!this.SettingsManager.ConfigurationData.HideWebContentReaderForTranslation)
|
|
|
|
{
|
|
|
|
<ReadWebContent @bind-Content="@this.inputText" ProviderSettings="@this.providerSettings" @bind-AgentIsRunning="@this.isAgentRunning" Preselect="@(this.SettingsManager.ConfigurationData.PreselectTranslationOptions && this.SettingsManager.ConfigurationData.PreselectWebContentReaderForTranslation)" PreselectContentCleanerAgent="@(this.SettingsManager.ConfigurationData.PreselectTranslationOptions && this.SettingsManager.ConfigurationData.PreselectContentCleanerAgentForTranslation)"/>
|
|
|
|
}
|
|
|
|
|
2024-08-03 20:09:38 +00:00
|
|
|
<MudTextSwitch Label="Live translation" @bind-Value="@this.liveTranslation" LabelOn="Live translation" LabelOff="No live translation"/>
|
2024-07-14 19:46:17 +00:00
|
|
|
@if (this.liveTranslation)
|
|
|
|
{
|
2024-08-05 06:58:45 +00:00
|
|
|
<MudTextField T="string" Disabled="@this.isAgentRunning" @bind-Text="@this.inputText" Validation="@this.ValidatingText" AdornmentIcon="@Icons.Material.Filled.DocumentScanner" Adornment="Adornment.Start" Label="Your input" Variant="Variant.Outlined" Lines="6" AutoGrow="@true" MaxLines="12" Class="mb-3" Immediate="@true" DebounceInterval="@this.SettingsManager.ConfigurationData.LiveTranslationDebounceIntervalMilliseconds" OnDebounceIntervalElapsed="() => this.TranslateText(force: false)" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
|
2024-07-14 19:46:17 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
2024-08-01 19:53:28 +00:00
|
|
|
<MudTextField T="string" Disabled="@this.isAgentRunning" @bind-Text="@this.inputText" Validation="@this.ValidatingText" AdornmentIcon="@Icons.Material.Filled.DocumentScanner" Adornment="Adornment.Start" Label="Your input" Variant="Variant.Outlined" Lines="6" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
|
2024-07-14 19:46:17 +00:00
|
|
|
}
|
|
|
|
|
2024-08-05 07:00:50 +00:00
|
|
|
<EnumSelection T="CommonLanguages" NameFunc="@(language => this.GetDisplayName(language))" @bind-Value="@this.selectedTargetLanguage" ValidateSelection="@this.ValidatingTargetLanguage" Icon="@Icons.Material.Filled.Translate" Label="Target language" AllowOther="@true" OtherValue="CommonLanguages.OTHER" @bind-OtherInput="@this.customTargetLanguage" ValidateOther="@this.ValidateCustomLanguage" LabelOther="Custom target language" />
|
2024-08-01 19:53:28 +00:00
|
|
|
<MudSelect T="Provider" @bind-Value="@this.providerSettings" Disabled="@this.isAgentRunning" Validation="@this.ValidatingProvider" Adornment="Adornment.Start" AdornmentIcon="@Icons.Material.Filled.Apps" Margin="Margin.Dense" Label="Provider" Class="mb-3 rounded-lg" Variant="Variant.Outlined">
|
2024-07-14 19:46:17 +00:00
|
|
|
@foreach (var provider in this.SettingsManager.ConfigurationData.Providers)
|
|
|
|
{
|
|
|
|
<MudSelectItem Value="@provider"/>
|
|
|
|
}
|
|
|
|
</MudSelect>
|
|
|
|
|
2024-08-01 19:53:28 +00:00
|
|
|
<MudButton Disabled="@this.isAgentRunning" Variant="Variant.Filled" Class="mb-3" OnClick="() => this.TranslateText(force: true)">
|
2024-07-14 19:46:17 +00:00
|
|
|
Translate
|
|
|
|
</MudButton>
|