diff --git a/src/Infrastructure/BotSharp.Abstraction/Plugins/Models/PluginMenuDef.cs b/src/Infrastructure/BotSharp.Abstraction/Plugins/Models/PluginMenuDef.cs index 77205aa9c..f347fb845 100644 --- a/src/Infrastructure/BotSharp.Abstraction/Plugins/Models/PluginMenuDef.cs +++ b/src/Infrastructure/BotSharp.Abstraction/Plugins/Models/PluginMenuDef.cs @@ -14,7 +14,7 @@ public class PluginMenuDef(string label, string? link = null, string? icon = nul public string? Link { get; set; } = link; [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] - public string? EmbedUrl { get; set; } + public EmbeddingData? EmbeddingInfo { get; set; } [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] public bool? IsHeader { get; set; } @@ -33,3 +33,35 @@ public override string ToString() return $"{Label} {Link} {Weight}"; } } + +public class EmbeddingData +{ + /// + /// Embedding source, e.g., tableau + /// + public string Source { get; set; } = default!; + + /// + /// Embedding url + /// + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public string? Url { get; set; } + + /// + /// Html tag + /// + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public string? HtmlTag { get; set; } + + /// + /// Javascript script src + /// + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public string? ScriptSrc { get; set; } + + /// + /// Javascript script type, e.g., module + /// + [JsonIgnore(Condition = JsonIgnoreCondition.WhenWritingNull)] + public string? ScriptType { get; set; } +}