diff --git a/.gitignore b/.gitignore
index 0b72c24..fab13d9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,5 @@ obj/
.vs/
.idea/
artifacts
+
+RELEASE_GUIDE.md
\ No newline at end of file
diff --git a/Directory.Build.props b/Directory.Build.props
deleted file mode 100644
index 02f19e1..0000000
--- a/Directory.Build.props
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
- 1.0.0.0
- 1.0.0.0
- 1.0.0.0
-
-
diff --git a/Jellyfin.Plugin.Seasonals/Api/SeasonalsController.cs b/Jellyfin.Plugin.Seasonals/Api/SeasonalsController.cs
index df1343f..591e408 100644
--- a/Jellyfin.Plugin.Seasonals/Api/SeasonalsController.cs
+++ b/Jellyfin.Plugin.Seasonals/Api/SeasonalsController.cs
@@ -45,7 +45,6 @@ public class SeasonalsController : ControllerBase
var assembly = Assembly.GetExecutingAssembly();
// Convert path to resource name
- // path: "autumn_images/acorn1.png" -> "Jellyfin.Plugin.Seasonals.Web.autumn_images.acorn1.png"
var resourcePath = path.Replace('/', '.').Replace('\\', '.');
var resourceName = $"Jellyfin.Plugin.Seasonals.Web.{resourcePath}";
diff --git a/Jellyfin.Plugin.Seasonals/Jellyfin.Plugin.Seasonals.csproj b/Jellyfin.Plugin.Seasonals/Jellyfin.Plugin.Seasonals.csproj
index be06b21..4c73cb8 100644
--- a/Jellyfin.Plugin.Seasonals/Jellyfin.Plugin.Seasonals.csproj
+++ b/Jellyfin.Plugin.Seasonals/Jellyfin.Plugin.Seasonals.csproj
@@ -5,26 +5,20 @@
net9.0
net8.0
Jellyfin.Plugin.Seasonals
- true
- false
enable
- AllEnabledByDefault
- ../jellyfin.ruleset
+
+
+
+
+
Jellyfin Seasonals Plugin
CodeDevMLH
- CodeDevMLH
- Jellyfin Seasonals Plugin
1.0.0.0
- https://github.com/CodeDevMLH/jellyfin-plugin-seasonals
https://github.com/CodeDevMLH/jellyfin-plugin-seasonals
-
- runtime
-
-
- runtime
-
+
+
@@ -32,6 +26,9 @@
+
+
+
diff --git a/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.deps.json b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.deps.json
index ab7efa6..0936c1a 100644
--- a/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.deps.json
+++ b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.deps.json
@@ -15,25 +15,64 @@
"Jellyfin.Plugin.Seasonals.dll": {}
}
},
- "BitFaster.Caching/2.5.4": {},
- "Diacritics/4.0.17": {},
+ "BitFaster.Caching/2.5.4": {
+ "runtime": {
+ "lib/net6.0/BitFaster.Caching.dll": {
+ "assemblyVersion": "2.5.4.0",
+ "fileVersion": "2.5.4.0"
+ }
+ }
+ },
+ "Diacritics/4.0.17": {
+ "runtime": {
+ "lib/net9.0/Diacritics.dll": {
+ "assemblyVersion": "4.0.17.0",
+ "fileVersion": "4.0.17.0"
+ }
+ }
+ },
"ICU4N/60.1.0-alpha.356": {
"dependencies": {
"J2N": "2.0.0",
"Microsoft.Extensions.Caching.Memory": "9.0.10"
+ },
+ "runtime": {
+ "lib/netstandard2.0/ICU4N.dll": {
+ "assemblyVersion": "60.0.0.0",
+ "fileVersion": "60.1.0.0"
+ }
}
},
"ICU4N.Transliterator/60.1.0-alpha.356": {
"dependencies": {
"ICU4N": "60.1.0-alpha.356"
+ },
+ "runtime": {
+ "lib/netstandard2.0/ICU4N.Transliterator.dll": {
+ "assemblyVersion": "60.0.0.0",
+ "fileVersion": "60.1.0.0"
+ }
+ }
+ },
+ "J2N/2.0.0": {
+ "runtime": {
+ "lib/net6.0/J2N.dll": {
+ "assemblyVersion": "2.0.0.0",
+ "fileVersion": "2.0.0.0"
+ }
}
},
- "J2N/2.0.0": {},
"Jellyfin.Common/10.11.0": {
"dependencies": {
"Jellyfin.Model": "10.11.0",
"Microsoft.Extensions.Configuration.Abstractions": "9.0.10",
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/MediaBrowser.Common.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Controller/10.11.0": {
@@ -46,30 +85,60 @@
"Microsoft.Extensions.Configuration.Abstractions": "9.0.10",
"Microsoft.Extensions.Configuration.Binder": "9.0.10",
"System.Threading.Tasks.Dataflow": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/MediaBrowser.Controller.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Data/10.11.0": {
"dependencies": {
"Jellyfin.Database.Implementations": "10.11.0",
"Microsoft.Extensions.Logging": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Jellyfin.Data.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Database.Implementations/10.11.0": {
"dependencies": {
"Microsoft.EntityFrameworkCore.Relational": "9.0.10",
"Polly": "8.6.4"
+ },
+ "runtime": {
+ "lib/net9.0/Jellyfin.Database.Implementations.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Extensions/10.11.0": {
"dependencies": {
"Diacritics": "4.0.17",
"ICU4N.Transliterator": "60.1.0-alpha.356"
+ },
+ "runtime": {
+ "lib/net9.0/Jellyfin.Extensions.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.MediaEncoding.Keyframes/10.11.0": {
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "9.0.10",
"NEbml": "1.1.0.5"
+ },
+ "runtime": {
+ "lib/net9.0/Jellyfin.MediaEncoding.Keyframes.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Model/10.11.0": {
@@ -79,12 +148,24 @@
"Microsoft.Extensions.Logging.Abstractions": "9.0.10",
"System.Globalization": "4.3.0",
"System.Text.Json": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/MediaBrowser.Model.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Naming/10.11.0": {
"dependencies": {
"Jellyfin.Common": "10.11.0",
"Jellyfin.Model": "10.11.0"
+ },
+ "runtime": {
+ "lib/net9.0/Emby.Naming.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Microsoft.EntityFrameworkCore/9.0.10": {
@@ -93,9 +174,22 @@
"Microsoft.EntityFrameworkCore.Analyzers": "9.0.10",
"Microsoft.Extensions.Caching.Memory": "9.0.10",
"Microsoft.Extensions.Logging": "9.0.10"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
+ "assemblyVersion": "9.0.10.0",
+ "fileVersion": "9.0.1025.47514"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/9.0.10": {
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
+ "assemblyVersion": "9.0.10.0",
+ "fileVersion": "9.0.1025.47514"
+ }
}
},
- "Microsoft.EntityFrameworkCore.Abstractions/9.0.10": {},
"Microsoft.EntityFrameworkCore.Analyzers/9.0.10": {},
"Microsoft.EntityFrameworkCore.Relational/9.0.10": {
"dependencies": {
@@ -103,11 +197,23 @@
"Microsoft.Extensions.Caching.Memory": "9.0.10",
"Microsoft.Extensions.Configuration.Abstractions": "9.0.10",
"Microsoft.Extensions.Logging": "9.0.10"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
+ "assemblyVersion": "9.0.10.0",
+ "fileVersion": "9.0.1025.47514"
+ }
}
},
"Microsoft.Extensions.Caching.Abstractions/9.0.10": {
"dependencies": {
"Microsoft.Extensions.Primitives": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Caching.Abstractions.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Caching.Memory/9.0.10": {
@@ -117,52 +223,128 @@
"Microsoft.Extensions.Logging.Abstractions": "9.0.10",
"Microsoft.Extensions.Options": "9.0.10",
"Microsoft.Extensions.Primitives": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Caching.Memory.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Configuration.Abstractions/9.0.10": {
"dependencies": {
"Microsoft.Extensions.Primitives": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Configuration.Binder/9.0.10": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Configuration.Binder.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.DependencyInjection/9.0.10": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/9.0.10": {
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
- "Microsoft.Extensions.DependencyInjection.Abstractions/9.0.10": {},
"Microsoft.Extensions.Logging/9.0.10": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "9.0.10",
"Microsoft.Extensions.Logging.Abstractions": "9.0.10",
"Microsoft.Extensions.Options": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Logging.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Logging.Abstractions/9.0.10": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Options/9.0.10": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.10",
"Microsoft.Extensions.Primitives": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Options.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
+ }
+ },
+ "Microsoft.Extensions.Primitives/9.0.10": {
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Primitives.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
- "Microsoft.Extensions.Primitives/9.0.10": {},
"Microsoft.NETCore.Platforms/1.1.0": {},
"Microsoft.NETCore.Targets/1.1.0": {},
- "NEbml/1.1.0.5": {},
+ "NEbml/1.1.0.5": {
+ "runtime": {
+ "lib/netstandard2.0/NEbml.Core.dll": {
+ "assemblyVersion": "1.1.0.5",
+ "fileVersion": "1.1.0.5"
+ }
+ }
+ },
"Polly/8.6.4": {
"dependencies": {
"Polly.Core": "8.6.4"
+ },
+ "runtime": {
+ "lib/net6.0/Polly.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.6.4.5033"
+ }
+ }
+ },
+ "Polly.Core/8.6.4": {
+ "runtime": {
+ "lib/net8.0/Polly.Core.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.6.4.5033"
+ }
}
},
- "Polly.Core/8.6.4": {},
"System.Globalization/4.3.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "1.1.0",
diff --git a/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.dll b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.dll
index d1ae1f5..bc0cca6 100644
Binary files a/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.dll and b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.dll differ
diff --git a/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.pdb b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.pdb
index 3847bb2..9881334 100644
Binary files a/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.pdb and b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.pdb differ
diff --git a/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.xml b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.xml
deleted file mode 100644
index f1dae18..0000000
--- a/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.xml
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
- Jellyfin.Plugin.Seasonals
-
-
-
-
- Controller for serving seasonal resources and configuration.
-
-
-
-
- Gets the current plugin configuration.
-
- The configuration object.
-
-
-
- Serves embedded resources.
-
- The path to the resource.
- The resource file.
-
-
-
- Plugin configuration.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Gets or sets the selected season.
-
-
-
-
- Gets or sets a value indicating whether to automate season selection.
-
-
-
-
- The main plugin.
-
-
-
-
- Initializes a new instance of the class.
-
- Instance of the interface.
- Instance of the interface.
- Instance of the interface.
-
-
-
-
-
-
-
-
-
- Gets the current plugin instance.
-
-
-
-
-
-
-
- Handles the injection of the Seasonals script into the Jellyfin web interface.
-
-
-
-
- Initializes a new instance of the class.
-
- The application paths.
- The logger.
-
-
-
- Injects the script tag into index.html if it's not already present.
-
-
-
-
- Removes the script tag from index.html.
-
-
-
-
- Retrieves the path to the Jellyfin web interface directory.
-
- The path to the web directory, or null if not found.
-
-
-
diff --git a/bin/Publish/Jellyfin.Plugin.Seasonals.deps.json b/bin/Publish/Jellyfin.Plugin.Seasonals.deps.json
index ab7efa6..0936c1a 100644
--- a/bin/Publish/Jellyfin.Plugin.Seasonals.deps.json
+++ b/bin/Publish/Jellyfin.Plugin.Seasonals.deps.json
@@ -15,25 +15,64 @@
"Jellyfin.Plugin.Seasonals.dll": {}
}
},
- "BitFaster.Caching/2.5.4": {},
- "Diacritics/4.0.17": {},
+ "BitFaster.Caching/2.5.4": {
+ "runtime": {
+ "lib/net6.0/BitFaster.Caching.dll": {
+ "assemblyVersion": "2.5.4.0",
+ "fileVersion": "2.5.4.0"
+ }
+ }
+ },
+ "Diacritics/4.0.17": {
+ "runtime": {
+ "lib/net9.0/Diacritics.dll": {
+ "assemblyVersion": "4.0.17.0",
+ "fileVersion": "4.0.17.0"
+ }
+ }
+ },
"ICU4N/60.1.0-alpha.356": {
"dependencies": {
"J2N": "2.0.0",
"Microsoft.Extensions.Caching.Memory": "9.0.10"
+ },
+ "runtime": {
+ "lib/netstandard2.0/ICU4N.dll": {
+ "assemblyVersion": "60.0.0.0",
+ "fileVersion": "60.1.0.0"
+ }
}
},
"ICU4N.Transliterator/60.1.0-alpha.356": {
"dependencies": {
"ICU4N": "60.1.0-alpha.356"
+ },
+ "runtime": {
+ "lib/netstandard2.0/ICU4N.Transliterator.dll": {
+ "assemblyVersion": "60.0.0.0",
+ "fileVersion": "60.1.0.0"
+ }
+ }
+ },
+ "J2N/2.0.0": {
+ "runtime": {
+ "lib/net6.0/J2N.dll": {
+ "assemblyVersion": "2.0.0.0",
+ "fileVersion": "2.0.0.0"
+ }
}
},
- "J2N/2.0.0": {},
"Jellyfin.Common/10.11.0": {
"dependencies": {
"Jellyfin.Model": "10.11.0",
"Microsoft.Extensions.Configuration.Abstractions": "9.0.10",
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/MediaBrowser.Common.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Controller/10.11.0": {
@@ -46,30 +85,60 @@
"Microsoft.Extensions.Configuration.Abstractions": "9.0.10",
"Microsoft.Extensions.Configuration.Binder": "9.0.10",
"System.Threading.Tasks.Dataflow": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/MediaBrowser.Controller.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Data/10.11.0": {
"dependencies": {
"Jellyfin.Database.Implementations": "10.11.0",
"Microsoft.Extensions.Logging": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Jellyfin.Data.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Database.Implementations/10.11.0": {
"dependencies": {
"Microsoft.EntityFrameworkCore.Relational": "9.0.10",
"Polly": "8.6.4"
+ },
+ "runtime": {
+ "lib/net9.0/Jellyfin.Database.Implementations.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Extensions/10.11.0": {
"dependencies": {
"Diacritics": "4.0.17",
"ICU4N.Transliterator": "60.1.0-alpha.356"
+ },
+ "runtime": {
+ "lib/net9.0/Jellyfin.Extensions.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.MediaEncoding.Keyframes/10.11.0": {
"dependencies": {
"Microsoft.Extensions.Logging.Abstractions": "9.0.10",
"NEbml": "1.1.0.5"
+ },
+ "runtime": {
+ "lib/net9.0/Jellyfin.MediaEncoding.Keyframes.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Model/10.11.0": {
@@ -79,12 +148,24 @@
"Microsoft.Extensions.Logging.Abstractions": "9.0.10",
"System.Globalization": "4.3.0",
"System.Text.Json": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/MediaBrowser.Model.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Jellyfin.Naming/10.11.0": {
"dependencies": {
"Jellyfin.Common": "10.11.0",
"Jellyfin.Model": "10.11.0"
+ },
+ "runtime": {
+ "lib/net9.0/Emby.Naming.dll": {
+ "assemblyVersion": "10.11.0.0",
+ "fileVersion": "10.11.0.0"
+ }
}
},
"Microsoft.EntityFrameworkCore/9.0.10": {
@@ -93,9 +174,22 @@
"Microsoft.EntityFrameworkCore.Analyzers": "9.0.10",
"Microsoft.Extensions.Caching.Memory": "9.0.10",
"Microsoft.Extensions.Logging": "9.0.10"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.dll": {
+ "assemblyVersion": "9.0.10.0",
+ "fileVersion": "9.0.1025.47514"
+ }
+ }
+ },
+ "Microsoft.EntityFrameworkCore.Abstractions/9.0.10": {
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {
+ "assemblyVersion": "9.0.10.0",
+ "fileVersion": "9.0.1025.47514"
+ }
}
},
- "Microsoft.EntityFrameworkCore.Abstractions/9.0.10": {},
"Microsoft.EntityFrameworkCore.Analyzers/9.0.10": {},
"Microsoft.EntityFrameworkCore.Relational/9.0.10": {
"dependencies": {
@@ -103,11 +197,23 @@
"Microsoft.Extensions.Caching.Memory": "9.0.10",
"Microsoft.Extensions.Configuration.Abstractions": "9.0.10",
"Microsoft.Extensions.Logging": "9.0.10"
+ },
+ "runtime": {
+ "lib/net8.0/Microsoft.EntityFrameworkCore.Relational.dll": {
+ "assemblyVersion": "9.0.10.0",
+ "fileVersion": "9.0.1025.47514"
+ }
}
},
"Microsoft.Extensions.Caching.Abstractions/9.0.10": {
"dependencies": {
"Microsoft.Extensions.Primitives": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Caching.Abstractions.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Caching.Memory/9.0.10": {
@@ -117,52 +223,128 @@
"Microsoft.Extensions.Logging.Abstractions": "9.0.10",
"Microsoft.Extensions.Options": "9.0.10",
"Microsoft.Extensions.Primitives": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Caching.Memory.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Configuration.Abstractions/9.0.10": {
"dependencies": {
"Microsoft.Extensions.Primitives": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Configuration.Abstractions.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Configuration.Binder/9.0.10": {
"dependencies": {
"Microsoft.Extensions.Configuration.Abstractions": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Configuration.Binder.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.DependencyInjection/9.0.10": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.DependencyInjection.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/9.0.10": {
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
- "Microsoft.Extensions.DependencyInjection.Abstractions/9.0.10": {},
"Microsoft.Extensions.Logging/9.0.10": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection": "9.0.10",
"Microsoft.Extensions.Logging.Abstractions": "9.0.10",
"Microsoft.Extensions.Options": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Logging.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Logging.Abstractions/9.0.10": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
"Microsoft.Extensions.Options/9.0.10": {
"dependencies": {
"Microsoft.Extensions.DependencyInjection.Abstractions": "9.0.10",
"Microsoft.Extensions.Primitives": "9.0.10"
+ },
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Options.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
+ }
+ },
+ "Microsoft.Extensions.Primitives/9.0.10": {
+ "runtime": {
+ "lib/net9.0/Microsoft.Extensions.Primitives.dll": {
+ "assemblyVersion": "9.0.0.0",
+ "fileVersion": "9.0.1025.47515"
+ }
}
},
- "Microsoft.Extensions.Primitives/9.0.10": {},
"Microsoft.NETCore.Platforms/1.1.0": {},
"Microsoft.NETCore.Targets/1.1.0": {},
- "NEbml/1.1.0.5": {},
+ "NEbml/1.1.0.5": {
+ "runtime": {
+ "lib/netstandard2.0/NEbml.Core.dll": {
+ "assemblyVersion": "1.1.0.5",
+ "fileVersion": "1.1.0.5"
+ }
+ }
+ },
"Polly/8.6.4": {
"dependencies": {
"Polly.Core": "8.6.4"
+ },
+ "runtime": {
+ "lib/net6.0/Polly.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.6.4.5033"
+ }
+ }
+ },
+ "Polly.Core/8.6.4": {
+ "runtime": {
+ "lib/net8.0/Polly.Core.dll": {
+ "assemblyVersion": "8.0.0.0",
+ "fileVersion": "8.6.4.5033"
+ }
}
},
- "Polly.Core/8.6.4": {},
"System.Globalization/4.3.0": {
"dependencies": {
"Microsoft.NETCore.Platforms": "1.1.0",
diff --git a/bin/Publish/Jellyfin.Plugin.Seasonals.dll b/bin/Publish/Jellyfin.Plugin.Seasonals.dll
index d1ae1f5..75231f7 100644
Binary files a/bin/Publish/Jellyfin.Plugin.Seasonals.dll and b/bin/Publish/Jellyfin.Plugin.Seasonals.dll differ
diff --git a/bin/Publish/Jellyfin.Plugin.Seasonals.pdb b/bin/Publish/Jellyfin.Plugin.Seasonals.pdb
index 3847bb2..3ea46a4 100644
Binary files a/bin/Publish/Jellyfin.Plugin.Seasonals.pdb and b/bin/Publish/Jellyfin.Plugin.Seasonals.pdb differ
diff --git a/bin/Publish/Jellyfin.Plugin.Seasonals.xml b/bin/Publish/Jellyfin.Plugin.Seasonals.xml
deleted file mode 100644
index f1dae18..0000000
--- a/bin/Publish/Jellyfin.Plugin.Seasonals.xml
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
- Jellyfin.Plugin.Seasonals
-
-
-
-
- Controller for serving seasonal resources and configuration.
-
-
-
-
- Gets the current plugin configuration.
-
- The configuration object.
-
-
-
- Serves embedded resources.
-
- The path to the resource.
- The resource file.
-
-
-
- Plugin configuration.
-
-
-
-
- Initializes a new instance of the class.
-
-
-
-
- Gets or sets the selected season.
-
-
-
-
- Gets or sets a value indicating whether to automate season selection.
-
-
-
-
- The main plugin.
-
-
-
-
- Initializes a new instance of the class.
-
- Instance of the interface.
- Instance of the interface.
- Instance of the interface.
-
-
-
-
-
-
-
-
-
- Gets the current plugin instance.
-
-
-
-
-
-
-
- Handles the injection of the Seasonals script into the Jellyfin web interface.
-
-
-
-
- Initializes a new instance of the class.
-
- The application paths.
- The logger.
-
-
-
- Injects the script tag into index.html if it's not already present.
-
-
-
-
- Removes the script tag from index.html.
-
-
-
-
- Retrieves the path to the Jellyfin web interface directory.
-
- The path to the web directory, or null if not found.
-
-
-
diff --git a/bin/Publish/Jellyfin.Plugin.Seasonals.zip b/bin/Publish/Jellyfin.Plugin.Seasonals.zip
index c8ba0c7..7168edb 100644
Binary files a/bin/Publish/Jellyfin.Plugin.Seasonals.zip and b/bin/Publish/Jellyfin.Plugin.Seasonals.zip differ
diff --git a/manifest.json b/manifest.json
index d0e62de..65fdb11 100644
--- a/manifest.json
+++ b/manifest.json
@@ -13,8 +13,8 @@
"changelog": "Initial release",
"targetAbi": "10.9.0.0",
"sourceUrl": "https://git.mahom03-spacecloud.de/CodeDevMLH/Jellyfin-Seasonals-Plugin/raw/branch/main/bin/Publish/Jellyfin.Plugin.Seasonals.zip",
- "checksum": "87990236bd9337eda22757423d896e22",
- "timestamp": "2025-12-14T23:50:27Z"
+ "checksum": "be6d06a959b3e18e5058a6d8fb6d800c",
+ "timestamp": "2025-12-15T15:33:15Z"
}
]
}