Skip to content

Commit 217d31b

Browse files
Released PDF import feature (#468)
1 parent 038ddec commit 217d31b

File tree

8 files changed

+29
-22
lines changed

8 files changed

+29
-22
lines changed
Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,12 @@
11
@attribute [Route(Routes.ASSISTANT_LEGAL_CHECK)]
2-
@using AIStudio.Settings.DataModel
32
@inherits AssistantBaseCore<AIStudio.Dialogs.Settings.SettingsDialogLegalCheck>
43

54
@if (!this.SettingsManager.ConfigurationData.LegalCheck.HideWebContentReader)
65
{
76
<ReadWebContent @bind-Content="@this.inputLegalDocument" ProviderSettings="@this.providerSettings" @bind-AgentIsRunning="@this.isAgentRunning" Preselect="@(this.SettingsManager.ConfigurationData.LegalCheck.PreselectOptions && this.SettingsManager.ConfigurationData.LegalCheck.PreselectWebContentReader)" PreselectContentCleanerAgent="@(this.SettingsManager.ConfigurationData.LegalCheck.PreselectOptions && this.SettingsManager.ConfigurationData.LegalCheck.PreselectContentCleanerAgent)"/>
87
}
98

10-
@if (PreviewFeatures.PRE_READ_PDF_2025.IsEnabled(this.SettingsManager))
11-
{
12-
<ReadPDFContent @bind-PDFContent="@this.inputLegalDocument"/>
13-
}
14-
9+
<ReadPDFContent @bind-PDFContent="@this.inputLegalDocument"/>
1510
<MudTextField T="string" Disabled="@this.isAgentRunning" @bind-Text="@this.inputLegalDocument" Validation="@this.ValidatingLegalDocument" AdornmentIcon="@Icons.Material.Filled.DocumentScanner" Adornment="Adornment.Start" Label="@T("Legal document")" Variant="Variant.Outlined" Lines="12" AutoGrow="@true" MaxLines="24" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
1611
<MudTextField T="string" Disabled="@this.isAgentRunning" @bind-Text="@this.inputQuestions" Validation="@this.ValidatingQuestions" AdornmentIcon="@Icons.Material.Filled.QuestionAnswer" Adornment="Adornment.Start" Label="@T("Your questions")" Variant="Variant.Outlined" Lines="6" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
1712
<ProviderSelection @bind-ProviderSettings="@this.providerSettings" ValidateProvider="@this.ValidatingProvider"/>

app/MindWork AI Studio/Assistants/TextSummarizer/AssistantTextSummarizer.razor

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,12 @@
11
@attribute [Route(Routes.ASSISTANT_SUMMARIZER)]
2-
@using AIStudio.Settings.DataModel
32
@inherits AssistantBaseCore<AIStudio.Dialogs.Settings.SettingsDialogTextSummarizer>
43

54
@if (!this.SettingsManager.ConfigurationData.TextSummarizer.HideWebContentReader)
65
{
76
<ReadWebContent @bind-Content="@this.inputText" ProviderSettings="@this.providerSettings" @bind-AgentIsRunning="@this.isAgentRunning" Preselect="@(this.SettingsManager.ConfigurationData.TextSummarizer.PreselectOptions && this.SettingsManager.ConfigurationData.TextSummarizer.PreselectWebContentReader)" PreselectContentCleanerAgent="@(this.SettingsManager.ConfigurationData.TextSummarizer.PreselectOptions && this.SettingsManager.ConfigurationData.TextSummarizer.PreselectContentCleanerAgent)"/>
87
}
98

10-
@if (PreviewFeatures.PRE_READ_PDF_2025.IsEnabled(this.SettingsManager))
11-
{
12-
<ReadPDFContent @bind-PDFContent="@this.inputText"/>
13-
}
14-
9+
<ReadPDFContent @bind-PDFContent="@this.inputText"/>
1510
<MudTextField T="string" Disabled="@this.isAgentRunning" @bind-Text="@this.inputText" Validation="@this.ValidatingText" AdornmentIcon="@Icons.Material.Filled.DocumentScanner" Adornment="Adornment.Start" Label="@T("Your input")" Variant="Variant.Outlined" Lines="6" AutoGrow="@true" MaxLines="12" Class="mb-3" UserAttributes="@USER_INPUT_ATTRIBUTES"/>
1611
<EnumSelection T="CommonLanguages" NameFunc="@(language => language.Name())" @bind-Value="@this.selectedTargetLanguage" Icon="@Icons.Material.Filled.Translate" Label="@T("Target language")" AllowOther="@true" @bind-OtherInput="@this.customTargetLanguage" OtherValue="CommonLanguages.OTHER" LabelOther="@T("Custom target language")" ValidateOther="@this.ValidateCustomLanguage" />
1712
<EnumSelection T="Complexity" NameFunc="@(complexity => complexity.Name())" @bind-Value="@this.selectedComplexity" Icon="@Icons.Material.Filled.Layers" Label="@T("Target complexity")" AllowOther="@true" @bind-OtherInput="@this.expertInField" OtherValue="Complexity.SCIENTIFIC_LANGUAGE_OTHER_EXPERTS" LabelOther="@T("Your expertise")" ValidateOther="@this.ValidateExpertInField" />

app/MindWork AI Studio/Assistants/Translation/AssistantTranslation.razor

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,12 @@
11
@attribute [Route(Routes.ASSISTANT_TRANSLATION)]
2-
@using AIStudio.Settings.DataModel
32
@inherits AssistantBaseCore<AIStudio.Dialogs.Settings.SettingsDialogTranslation>
43

54
@if (!this.SettingsManager.ConfigurationData.Translation.HideWebContentReader)
65
{
76
<ReadWebContent @bind-Content="@this.inputText" ProviderSettings="@this.providerSettings" @bind-AgentIsRunning="@this.isAgentRunning" Preselect="@(this.SettingsManager.ConfigurationData.Translation.PreselectOptions && this.SettingsManager.ConfigurationData.Translation.PreselectWebContentReader)" PreselectContentCleanerAgent="@(this.SettingsManager.ConfigurationData.Translation.PreselectOptions && this.SettingsManager.ConfigurationData.Translation.PreselectContentCleanerAgent)"/>
87
}
98

10-
@if (PreviewFeatures.PRE_READ_PDF_2025.IsEnabled(this.SettingsManager))
11-
{
12-
<ReadPDFContent @bind-PDFContent="@this.inputText"/>
13-
}
14-
9+
<ReadPDFContent @bind-PDFContent="@this.inputText"/>
1510
<MudTextSwitch Label="@T("Live translation")" @bind-Value="@this.liveTranslation" LabelOn="@T("Live translation")" LabelOff="@T("No live translation")"/>
1611
@if (this.liveTranslation)
1712
{

app/MindWork AI Studio/Components/Settings/SettingsPanelApp.razor

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
var availablePreviewFeatures = ConfigurationSelectDataFactory.GetPreviewFeaturesData(this.SettingsManager).ToList();
2727
if (availablePreviewFeatures.Count > 0)
2828
{
29-
<ConfigurationMultiSelect OptionDescription="@T("Select preview features")" SelectedValues="@(() => this.SettingsManager.ConfigurationData.App.EnabledPreviewFeatures)" Data="@availablePreviewFeatures" SelectionUpdate="@(selectedValue => this.SettingsManager.ConfigurationData.App.EnabledPreviewFeatures = selectedValue)" OptionHelp="@T("Which preview features would you like to enable?")"/>
29+
<ConfigurationMultiSelect OptionDescription="@T("Select preview features")" SelectedValues="@(() => this.SettingsManager.ConfigurationData.App.EnabledPreviewFeatures.Where(x => !x.IsReleased()).ToHashSet())" Data="@availablePreviewFeatures" SelectionUpdate="@(selectedValue => this.SettingsManager.ConfigurationData.App.EnabledPreviewFeatures = selectedValue)" OptionHelp="@T("Which preview features would you like to enable?")"/>
3030
}
3131
}
3232

app/MindWork AI Studio/Settings/ConfigurationSelectDataFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ public static IEnumerable<ConfigurationSelectData<PreviewVisibility>> GetPreview
108108

109109
public static IEnumerable<ConfigurationSelectData<PreviewFeatures>> GetPreviewFeaturesData(SettingsManager settingsManager)
110110
{
111-
foreach (var source in settingsManager.ConfigurationData.App.PreviewVisibility.GetPreviewFeatures())
111+
foreach (var source in settingsManager.ConfigurationData.App.PreviewVisibility.GetPreviewFeatures().Where(x => !x.IsReleased()))
112112
yield return new(source.GetPreviewDescription(), source);
113113
}
114114

app/MindWork AI Studio/Settings/DataModel/PreviewFeaturesExtensions.cs

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,26 @@ public static class PreviewFeaturesExtensions
1717
_ => TB("Unknown preview feature")
1818
};
1919

20-
public static bool IsEnabled(this PreviewFeatures feature, SettingsManager settingsManager) => settingsManager.ConfigurationData.App.EnabledPreviewFeatures.Contains(feature);
20+
/// <summary>
21+
/// Check if the preview feature is released or not.
22+
/// </summary>
23+
/// <remarks>
24+
/// This metadata is necessary because we cannot remove the enum values from the list.
25+
/// Otherwise, we could not deserialize old settings files that may contain these values.
26+
/// </remarks>
27+
/// <param name="feature">The preview feature to check.</param>
28+
/// <returns>True when the preview feature is released, false otherwise.</returns>
29+
public static bool IsReleased(this PreviewFeatures feature) => feature switch
30+
{
31+
PreviewFeatures.PRE_READ_PDF_2025 => true,
32+
_ => false
33+
};
34+
35+
public static bool IsEnabled(this PreviewFeatures feature, SettingsManager settingsManager)
36+
{
37+
if(feature.IsReleased())
38+
return true;
39+
40+
return settingsManager.ConfigurationData.App.EnabledPreviewFeatures.Contains(feature);
41+
}
2142
}

app/MindWork AI Studio/wwwroot/changelog/v0.9.44.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# v0.9.44, build 219 (2025-05-xx xx:xx UTC)
2+
- Added PDF import feature: we have completed the work on the PDF import feature. Importing PDF files has been successfully tested on macOS, Linux, and Windows. The feature is now enabled for everyone.
23
- Improved compatibility with certain Ubuntu linux versions regarding desktop integration.
34
- Improved the table views for providers, embeddings, and profiles by displaying actions as icons with tooltips.
45
- Improved localization code & German translation.

metadata.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@
88
1.8.1
99
ba236c4012d, release
1010
osx-arm64
11-
137.0.7123.0
11+
137.0.7123.0

0 commit comments

Comments
 (0)