AI-Studio/app/MindWork AI Studio/Settings/DataModel/DataVisualBriefing.cs
Thorsten Sommer 58cc811a58
Some checks failed
Build and Release / Determine run mode (push) Has been cancelled
Build and Release / Read metadata (push) Has been cancelled
Build and Release / Sync Flatpak repo (push) Has been cancelled
Build and Release / Collect Flatpak artifacts (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-apple-darwin, osx-arm64, macos-latest, aarch64-apple-darwin, dmg,app,updater, dmg) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-pc-windows-msvc.exe, win-arm64, windows-latest, aarch64-pc-windows-msvc, nsis,updater, nsis) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-unknown-linux-gnu, linux-arm64, ubuntu-22.04-arm, aarch64-unknown-linux-gnu, appimage,updater, appimage) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-apple-darwin, osx-x64, macos-latest, x86_64-apple-darwin, dmg,app,updater, dmg) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-pc-windows-msvc.exe, win-x64, windows-latest, x86_64-pc-windows-msvc, nsis,updater, nsis) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-unknown-linux-gnu, linux-x64, ubuntu-22.04, x86_64-unknown-linux-gnu, appimage,updater, appimage) (push) Has been cancelled
Build and Release / Prepare & create release (push) Has been cancelled
Build and Release / Publish release (push) Has been cancelled
Added the visual briefing assistant (#893)
2026-08-02 21:41:12 +02:00

75 lines
3.5 KiB
C#

using System.Linq.Expressions;
using AIStudio.Assistants.SlideBuilder;
using AIStudio.Provider;
namespace AIStudio.Settings.DataModel;
/// <summary>
/// Stores managed default settings for the Visual Briefing Assistant.
/// </summary>
/// <param name="configSelection">The managed-configuration selector.</param>
public sealed class DataVisualBriefing(Expression<Func<Data, DataVisualBriefing>>? configSelection = null)
{
/// <summary>
/// Initializes an unmanaged Visual Briefing settings instance.
/// </summary>
public DataVisualBriefing() : this(null)
{
}
/// <summary>
/// Gets or sets the preselected profile identifier.
/// </summary>
public string PreselectedProfile { get; set; } = ManagedConfiguration.Register(configSelection, value => value.PreselectedProfile, string.Empty);
/// <summary>
/// Gets or sets the preselected provider identifier.
/// </summary>
public string PreselectedProvider { get; set; } = ManagedConfiguration.Register(configSelection, value => value.PreselectedProvider, string.Empty);
/// <summary>
/// Gets or sets the default target language.
/// </summary>
public CommonLanguages PreselectedTargetLanguage { get; set; } = ManagedConfiguration.Register(configSelection, value => value.PreselectedTargetLanguage, CommonLanguages.EN_US);
/// <summary>
/// Gets or sets the default free-form target language.
/// </summary>
public string PreselectedOtherLanguage { get; set; } = ManagedConfiguration.Register(configSelection, value => value.PreselectedOtherLanguage, string.Empty);
/// <summary>
/// Gets or sets the default audience profile.
/// </summary>
public AudienceProfile PreselectedAudienceProfile { get; set; } = ManagedConfiguration.Register(configSelection, value => value.PreselectedAudienceProfile, AudienceProfile.UNSPECIFIED);
/// <summary>
/// Gets or sets the default audience age group.
/// </summary>
public AudienceAgeGroup PreselectedAudienceAgeGroup { get; set; } = ManagedConfiguration.Register(configSelection, value => value.PreselectedAudienceAgeGroup, AudienceAgeGroup.UNSPECIFIED);
/// <summary>
/// Gets or sets the default audience organizational level.
/// </summary>
public AudienceOrganizationalLevel PreselectedAudienceOrganizationalLevel { get; set; } = ManagedConfiguration.Register(configSelection, value => value.PreselectedAudienceOrganizationalLevel, AudienceOrganizationalLevel.UNSPECIFIED);
/// <summary>
/// Gets or sets the default audience expertise.
/// </summary>
public AudienceExpertise PreselectedAudienceExpertise { get; set; } = ManagedConfiguration.Register(configSelection, value => value.PreselectedAudienceExpertise, AudienceExpertise.UNSPECIFIED);
/// <summary>
/// Gets or sets whether generated briefings show source references by default.
/// </summary>
public bool ShowSourceReferences { get; set; } = ManagedConfiguration.Register(configSelection, value => value.ShowSourceReferences, true);
/// <summary>
/// Gets or sets whether visual assets are optimized by default.
/// </summary>
public bool OptimizeImages { get; set; } = ManagedConfiguration.Register(configSelection, value => value.OptimizeImages, true);
/// <summary>
/// Gets or sets the minimum confidence accepted for the selected provider.
/// </summary>
public ConfidenceLevel MinimumProviderConfidence { get; set; } = ManagedConfiguration.Register(configSelection, value => value.MinimumProviderConfidence, ConfidenceLevel.NONE);
}