Files
jellyfin-plugin-lyrics/Jellyfin.Plugin.Lyrics/LyricsPlugin.cs
2025-09-25 11:06:52 +02:00

48 lines
1.4 KiB
C#

using System;
using System.Collections.Generic;
using Jellyfin.Plugin.Lyrics.Configuration;
using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Plugins;
using MediaBrowser.Model.Plugins;
using MediaBrowser.Model.Serialization;
namespace Jellyfin.Plugin.Lyrics;
/// <summary>
/// Lyrics plugin.
/// </summary>
public class LyricsPlugin : BasePlugin<PluginConfiguration>, IHasWebPages
{
/// <summary>
/// Initializes a new instance of the <see cref="LyricsPlugin"/> class.
/// </summary>
/// <param name="applicationPaths">Instance of the <see cref="IApplicationPaths"/>.</param>
/// <param name="xmlSerializer">Instance of the <see cref="IXmlSerializer"/>.</param>
public LyricsPlugin(IApplicationPaths applicationPaths, IXmlSerializer xmlSerializer)
: base(applicationPaths, xmlSerializer)
{
Instance = this;
}
/// <inheritdoc />
public override string Name => "Lyrics";
/// <inheritdoc />
public override Guid Id => Guid.Parse("F4A1B2C3-D4E5-6F7A-8B9C-0D1E2F3A4B5C");
/// <summary>
/// Gets the current plugin instance.
/// </summary>
public static LyricsPlugin? Instance { get; private set; }
/// <inheritdoc />
public IEnumerable<PluginPageInfo> GetPages()
{
yield return new PluginPageInfo
{
Name = Name,
EmbeddedResourcePath = $"{GetType().Namespace}.Configuration.config.html"
};
}
}