diff --git a/app/MindWork AI Studio/Plugins/configuration/plugin.lua b/app/MindWork AI Studio/Plugins/configuration/plugin.lua index 2debb704..c4e5f08c 100644 --- a/app/MindWork AI Studio/Plugins/configuration/plugin.lua +++ b/app/MindWork AI Studio/Plugins/configuration/plugin.lua @@ -3,7 +3,7 @@ require("icon") -- ------ -- This is an example of a configuration plugin. Please replace -- the placeholders and assign a valid ID. --- IDs should be lower-case. +-- All IDs should be lower-case. -- ------ -- The ID for this plugin: @@ -98,7 +98,7 @@ CONFIG["SETTINGS"] = {} -- Configure the preselected profile. -- It must be one of the profile IDs defined in CONFIG["PROFILES"]. --- Using an empty string ("") will lock the preselected profile selection, even though no valid preselected profile is found. +-- Please note: using an empty string ("") will lock the preselected profile selection, even though no valid preselected profile is found. -- CONFIG["SETTINGS"]["DataApp.PreselectedProfile"] = "00000000-0000-0000-0000-000000000000" -- Example chat templates for this configuration: diff --git a/app/MindWork AI Studio/Settings/ManagedConfiguration.Parsing.cs b/app/MindWork AI Studio/Settings/ManagedConfiguration.Parsing.cs index e5088e38..47369044 100644 --- a/app/MindWork AI Studio/Settings/ManagedConfiguration.Parsing.cs +++ b/app/MindWork AI Studio/Settings/ManagedConfiguration.Parsing.cs @@ -167,19 +167,19 @@ public static partial class ManagedConfiguration /// Furthermore, it locks the managed state of the configuration metadata to the provided configuration plugin ID. /// The setting's value is set to the configured value. /// - /// Parameter type of the configuration entry. + /// Parameter type of the configuration entry. /// The ID of the related configuration plugin. /// The Lua table containing the settings to process. /// The expression to select the configuration class. /// The expression to select the property within the configuration class. /// When true, the method will not apply any changes, but only check if the configuration can be read. /// The type of the configuration class. - /// The data type of the configuration. + /// The data type of the configured value. /// True when the configuration was successfully processed, otherwise false. public static bool TryProcessConfiguration( Expression> configSelection, Expression> propertyExpression, - TDataType type, + TDataType configuredType, Guid configPluginId, LuaTable settings, bool dryRun) @@ -201,12 +201,15 @@ public static partial class ManagedConfiguration // Step 2 -- try to read the Lua value as a string: if(configuredTextValue.TryRead(out var configuredText)) { - switch (type) + switch (configuredType) { + // Case: the read string is a Guid: case Guid: successful = Guid.TryParse(configuredText, out var id); configuredValue = successful ? id.ToString().ToLowerInvariant(): configuredText; break; + + // Case: the read string is just a string: case string: configuredValue = configuredText; successful = true; diff --git a/app/MindWork AI Studio/wwwroot/changelog/v0.9.55.md b/app/MindWork AI Studio/wwwroot/changelog/v0.9.55.md index 2f221d88..5e8137ea 100644 --- a/app/MindWork AI Studio/wwwroot/changelog/v0.9.55.md +++ b/app/MindWork AI Studio/wwwroot/changelog/v0.9.55.md @@ -1,2 +1,2 @@ # v0.9.55, build 230 (2025-12-xx xx:xx UTC) -- Improved the ID handling in the enterprise plugin. \ No newline at end of file +- Improved the ID handling for configuration plugins. \ No newline at end of file