diff --git a/.gitignore b/.gitignore
index 0b72c24..8a3012a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,3 @@
-bin/
obj/
.vs/
.idea/
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
new file mode 100644
index 0000000..589e975
--- /dev/null
+++ b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.deps.json
@@ -0,0 +1,468 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v9.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v9.0": {
+ "Jellyfin.Plugin.Seasonals/0.0.0.0": {
+ "dependencies": {
+ "Jellyfin.Controller": "10.9.11",
+ "Jellyfin.Model": "10.9.11",
+ "SerilogAnalyzer": "0.15.0",
+ "SmartAnalyzers.MultithreadingAnalyzer": "1.1.31",
+ "StyleCop.Analyzers": "1.2.0-beta.556"
+ },
+ "runtime": {
+ "Jellyfin.Plugin.Seasonals.dll": {}
+ }
+ },
+ "Diacritics/3.3.29": {},
+ "ICU4N/60.1.0-alpha.356": {
+ "dependencies": {
+ "J2N": "2.0.0",
+ "Microsoft.Extensions.Caching.Memory": "2.0.0"
+ }
+ },
+ "ICU4N.Transliterator/60.1.0-alpha.356": {
+ "dependencies": {
+ "ICU4N": "60.1.0-alpha.356"
+ }
+ },
+ "J2N/2.0.0": {},
+ "Jellyfin.Common/10.9.11": {
+ "dependencies": {
+ "Jellyfin.Model": "10.9.11",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1"
+ }
+ },
+ "Jellyfin.Controller/10.9.11": {
+ "dependencies": {
+ "Jellyfin.Common": "10.9.11",
+ "Jellyfin.Model": "10.9.11",
+ "Jellyfin.Naming": "10.9.11",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Configuration.Binder": "8.0.2",
+ "System.Threading.Tasks.Dataflow": "8.0.1"
+ }
+ },
+ "Jellyfin.Data/10.9.11": {
+ "dependencies": {
+ "Microsoft.Extensions.Logging": "8.0.0"
+ }
+ },
+ "Jellyfin.Extensions/10.9.11": {
+ "dependencies": {
+ "Diacritics": "3.3.29",
+ "ICU4N.Transliterator": "60.1.0-alpha.356"
+ }
+ },
+ "Jellyfin.Model/10.9.11": {
+ "dependencies": {
+ "Jellyfin.Data": "10.9.11",
+ "Jellyfin.Extensions": "10.9.11",
+ "Microsoft.AspNetCore.HttpOverrides": "2.2.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.1",
+ "System.Globalization": "4.3.0",
+ "System.Text.Json": "8.0.4"
+ }
+ },
+ "Jellyfin.Naming/10.9.11": {
+ "dependencies": {
+ "Jellyfin.Common": "10.9.11",
+ "Jellyfin.Model": "10.9.11"
+ }
+ },
+ "Microsoft.AspNetCore.Http.Abstractions/2.2.0": {
+ "dependencies": {
+ "Microsoft.AspNetCore.Http.Features": "2.2.0",
+ "System.Text.Encodings.Web": "8.0.0"
+ }
+ },
+ "Microsoft.AspNetCore.Http.Extensions/2.2.0": {
+ "dependencies": {
+ "Microsoft.AspNetCore.Http.Abstractions": "2.2.0",
+ "Microsoft.Extensions.FileProviders.Abstractions": "2.2.0",
+ "Microsoft.Net.Http.Headers": "2.2.0",
+ "System.Buffers": "4.5.0"
+ }
+ },
+ "Microsoft.AspNetCore.Http.Features/2.2.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.AspNetCore.HttpOverrides/2.2.0": {
+ "dependencies": {
+ "Microsoft.AspNetCore.Http.Extensions": "2.2.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.1",
+ "Microsoft.Extensions.Options": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Caching.Abstractions/2.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Caching.Memory/2.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Caching.Abstractions": "2.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1",
+ "Microsoft.Extensions.Options": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Configuration.Binder/8.0.2": {
+ "dependencies": {
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1"
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.1": {},
+ "Microsoft.Extensions.FileProviders.Abstractions/2.2.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Logging/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.1",
+ "Microsoft.Extensions.Options": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1"
+ }
+ },
+ "Microsoft.Extensions.Options/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {},
+ "Microsoft.Net.Http.Headers/2.2.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0",
+ "System.Buffers": "4.5.0"
+ }
+ },
+ "Microsoft.NETCore.Platforms/1.1.0": {},
+ "Microsoft.NETCore.Targets/1.1.0": {},
+ "SerilogAnalyzer/0.15.0": {},
+ "SmartAnalyzers.MultithreadingAnalyzer/1.1.31": {},
+ "StyleCop.Analyzers/1.2.0-beta.556": {
+ "dependencies": {
+ "StyleCop.Analyzers.Unstable": "1.2.0.556"
+ }
+ },
+ "StyleCop.Analyzers.Unstable/1.2.0.556": {},
+ "System.Buffers/4.5.0": {},
+ "System.Globalization/4.3.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.1.0",
+ "Microsoft.NETCore.Targets": "1.1.0",
+ "System.Runtime": "4.3.0"
+ }
+ },
+ "System.Runtime/4.3.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.1.0",
+ "Microsoft.NETCore.Targets": "1.1.0"
+ }
+ },
+ "System.Text.Encodings.Web/8.0.0": {},
+ "System.Text.Json/8.0.4": {
+ "dependencies": {
+ "System.Text.Encodings.Web": "8.0.0"
+ }
+ },
+ "System.Threading.Tasks.Dataflow/8.0.1": {}
+ }
+ },
+ "libraries": {
+ "Jellyfin.Plugin.Seasonals/0.0.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "Diacritics/3.3.29": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-yrbxg/3T2af17np2XIjRbRXWM1OdtwJof9xg3qRj7D3s9AYkuEpD4UMCsNvnj//GHvzN9hw79ceh4z8Fhlvvhw==",
+ "path": "diacritics/3.3.29",
+ "hashPath": "diacritics.3.3.29.nupkg.sha512"
+ },
+ "ICU4N/60.1.0-alpha.356": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-YMZtDnjcqWzziOKiE7w6Ma7Rl5vuFDxzOsUlHh1QyfghbNEIZQOLRs9MMfwCWAjX6n9UitrF6vLXy55Z5q+4Fg==",
+ "path": "icu4n/60.1.0-alpha.356",
+ "hashPath": "icu4n.60.1.0-alpha.356.nupkg.sha512"
+ },
+ "ICU4N.Transliterator/60.1.0-alpha.356": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-lFOSO6bbEtB6HkWMNDJAq+rFwVyi9g6xVc5O/2xHa6iZnV7wLVDqCbaQ4W4vIeBSQZAafqhxciaEkmAvSdzlCg==",
+ "path": "icu4n.transliterator/60.1.0-alpha.356",
+ "hashPath": "icu4n.transliterator.60.1.0-alpha.356.nupkg.sha512"
+ },
+ "J2N/2.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-M5bwDajAARZiyqupU+rHQJnsVLxNBOHJ8vKYHd8LcLIb1FgLfzzcJvc31Qo5Xz/GEHFjDF9ScjKL/ks/zRTXuA==",
+ "path": "j2n/2.0.0",
+ "hashPath": "j2n.2.0.0.nupkg.sha512"
+ },
+ "Jellyfin.Common/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-UxXdWzoReqQkV7+MOChNbOX9YBlfx8oz4/GKI7PjBDkzjLCDKiQTcVJk8/GceiMSZ05+5g34qGCp2snO8qRBHQ==",
+ "path": "jellyfin.common/10.9.11",
+ "hashPath": "jellyfin.common.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Controller/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-BT/4AILCNMEKlP3jl1hvktSvCtG2gArwaGGrFIM6C92ioEfuNBIpLdLCAF1k/YnCOE1X0xVE9yp6uCPjb2sPeQ==",
+ "path": "jellyfin.controller/10.9.11",
+ "hashPath": "jellyfin.controller.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Data/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-ovZfELGxQlMsX1voE4wbimWWDbQKfuv1aiggaE6rllZbqCRhWJhKiTB89i4SG62k/plCUIk9k6qxlBfTyCIGjQ==",
+ "path": "jellyfin.data/10.9.11",
+ "hashPath": "jellyfin.data.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Extensions/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-5DmxbMRzqa6AFJAA3mYMlROzRqmFBtSzUVdyaOXwJ3aQgkSktqPJnIqyEoRk4U7FIPoIcS9qmVDXCxvX8VSV6w==",
+ "path": "jellyfin.extensions/10.9.11",
+ "hashPath": "jellyfin.extensions.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Model/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-Cd4hh67oTf46dKNVzNqTyJdYYDczNapvK39GMQK9uqYcjVrRCcxNo8VywXUS7AUud92aG9xWX7QvssbDIWesAA==",
+ "path": "jellyfin.model/10.9.11",
+ "hashPath": "jellyfin.model.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Naming/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-0TAifRd4/27s74AGc1tVh3+7MgWLF/xV8z1/lfsI1YtxWWDoM0GN2VLVtaQ7ltcXckCqo1KyHP0uzqGfDls48Q==",
+ "path": "jellyfin.naming/10.9.11",
+ "hashPath": "jellyfin.naming.10.9.11.nupkg.sha512"
+ },
+ "Microsoft.AspNetCore.Http.Abstractions/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-Nxs7Z1q3f1STfLYKJSVXCs1iBl+Ya6E8o4Oy1bCxJ/rNI44E/0f6tbsrVqAWfB7jlnJfyaAtIalBVxPKUPQb4Q==",
+ "path": "microsoft.aspnetcore.http.abstractions/2.2.0",
+ "hashPath": "microsoft.aspnetcore.http.abstractions.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.AspNetCore.Http.Extensions/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-2DgZ9rWrJtuR7RYiew01nGRzuQBDaGHGmK56Rk54vsLLsCdzuFUPqbDTJCS1qJQWTbmbIQ9wGIOjpxA1t0l7/w==",
+ "path": "microsoft.aspnetcore.http.extensions/2.2.0",
+ "hashPath": "microsoft.aspnetcore.http.extensions.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.AspNetCore.Http.Features/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-ziFz5zH8f33En4dX81LW84I6XrYXKf9jg6aM39cM+LffN9KJahViKZ61dGMSO2gd3e+qe5yBRwsesvyqlZaSMg==",
+ "path": "microsoft.aspnetcore.http.features/2.2.0",
+ "hashPath": "microsoft.aspnetcore.http.features.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.AspNetCore.HttpOverrides/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-pOlLQyNKQduGbtbgB55RyTHFeshSfKi3DmofrVjk+UBQjyp+Tm0RNNJFQf+sv34hlFsel+VnD79QyO9Zk/c3oA==",
+ "path": "microsoft.aspnetcore.httpoverrides/2.2.0",
+ "hashPath": "microsoft.aspnetcore.httpoverrides.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Abstractions/2.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-kGMEV53Od1ES0BDh7OOKbTW9Zu5dbbQ72yI936dvvbHlde3puuq/WRKAccFgcB2PuRjox1HFhA9+t53RYqfuEA==",
+ "path": "microsoft.extensions.caching.abstractions/2.0.0",
+ "hashPath": "microsoft.extensions.caching.abstractions.2.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Memory/2.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-NqvVdYLbX7N2J2Wz9y3zjhE66JRdROiZZsGhA2u4a9IcIq/jzINC/cLM96BHA+TSOZFPxVdWneqB6/yt9u846A==",
+ "path": "microsoft.extensions.caching.memory/2.0.0",
+ "hashPath": "microsoft.extensions.caching.memory.2.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
+ "path": "microsoft.extensions.configuration.abstractions/8.0.0",
+ "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Configuration.Binder/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-7IQhGK+wjyGrNsPBjJcZwWAr+Wf6D4+TwOptUt77bWtgNkiV8tDEbhFS+dDamtQFZ2X7kWG9m71iZQRj2x3zgQ==",
+ "path": "microsoft.extensions.configuration.binder/8.0.2",
+ "hashPath": "microsoft.extensions.configuration.binder.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-V8S3bsm50ig6JSyrbcJJ8bW2b9QLGouz+G1miK3UTaOWmMtFwNNNzUf4AleyDWUmTrWMLNnFSLEQtxmxgNQnNQ==",
+ "path": "microsoft.extensions.dependencyinjection/8.0.0",
+ "hashPath": "microsoft.extensions.dependencyinjection.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-fGLiCRLMYd00JYpClraLjJTNKLmMJPnqxMaiRzEBIIvevlzxz33mXy39Lkd48hu1G+N21S7QpaO5ZzKsI6FRuA==",
+ "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.1",
+ "hashPath": "microsoft.extensions.dependencyinjection.abstractions.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.FileProviders.Abstractions/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-EcnaSsPTqx2MGnHrmWOD0ugbuuqVT8iICqSqPzi45V5/MA1LjUNb0kwgcxBGqizV1R+WeBK7/Gw25Jzkyk9bIw==",
+ "path": "microsoft.extensions.fileproviders.abstractions/2.2.0",
+ "hashPath": "microsoft.extensions.fileproviders.abstractions.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-tvRkov9tAJ3xP51LCv3FJ2zINmv1P8Hi8lhhtcKGqM+ImiTCC84uOPEI4z8Cdq2C3o9e+Aa0Gw0rmrsJD77W+w==",
+ "path": "microsoft.extensions.logging/8.0.0",
+ "hashPath": "microsoft.extensions.logging.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-RIFgaqoaINxkM2KTOw72dmilDmTrYA0ns2KW4lDz4gZ2+o6IQ894CzmdL3StM2oh7QQq44nCWiqKqc4qUI9Jmg==",
+ "path": "microsoft.extensions.logging.abstractions/8.0.1",
+ "hashPath": "microsoft.extensions.logging.abstractions.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Options/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-JOVOfqpnqlVLUzINQ2fox8evY2SKLYJ3BV8QDe/Jyp21u1T7r45x/R/5QdteURMR5r01GxeJSBBUOCOyaNXA3g==",
+ "path": "microsoft.extensions.options/8.0.0",
+ "hashPath": "microsoft.extensions.options.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==",
+ "path": "microsoft.extensions.primitives/8.0.0",
+ "hashPath": "microsoft.extensions.primitives.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Net.Http.Headers/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-iZNkjYqlo8sIOI0bQfpsSoMTmB/kyvmV2h225ihyZT33aTp48ZpF6qYnXxzSXmHt8DpBAwBTX+1s1UFLbYfZKg==",
+ "path": "microsoft.net.http.headers/2.2.0",
+ "hashPath": "microsoft.net.http.headers.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.NETCore.Platforms/1.1.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==",
+ "path": "microsoft.netcore.platforms/1.1.0",
+ "hashPath": "microsoft.netcore.platforms.1.1.0.nupkg.sha512"
+ },
+ "Microsoft.NETCore.Targets/1.1.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==",
+ "path": "microsoft.netcore.targets/1.1.0",
+ "hashPath": "microsoft.netcore.targets.1.1.0.nupkg.sha512"
+ },
+ "SerilogAnalyzer/0.15.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-sVpwfls4MfNnwIXLSGCgaUnV+c9kgJ8ia6GsyRcpd4Vs3gLogSDtSYBYrre2K2u/PNMo8GgG09RehwVnze70Tw==",
+ "path": "seriloganalyzer/0.15.0",
+ "hashPath": "seriloganalyzer.0.15.0.nupkg.sha512"
+ },
+ "SmartAnalyzers.MultithreadingAnalyzer/1.1.31": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-2f2k7bbhDd132ArglCKpzKoWBcp3uzbIFcb4aosnlqIKlfYKDE2HevBVRNVa+LkWFnjXFFWs47Bo96fu8iS//Q==",
+ "path": "smartanalyzers.multithreadinganalyzer/1.1.31",
+ "hashPath": "smartanalyzers.multithreadinganalyzer.1.1.31.nupkg.sha512"
+ },
+ "StyleCop.Analyzers/1.2.0-beta.556": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-llRPgmA1fhC0I0QyFLEcjvtM2239QzKr/tcnbsjArLMJxJlu0AA5G7Fft0OI30pHF3MW63Gf4aSSsjc5m82J1Q==",
+ "path": "stylecop.analyzers/1.2.0-beta.556",
+ "hashPath": "stylecop.analyzers.1.2.0-beta.556.nupkg.sha512"
+ },
+ "StyleCop.Analyzers.Unstable/1.2.0.556": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-zvn9Mqs/ox/83cpYPignI8hJEM2A93s2HkHs8HYMOAQW0PkampyoErAiIyKxgTLqbbad29HX/shv/6LGSjPJNQ==",
+ "path": "stylecop.analyzers.unstable/1.2.0.556",
+ "hashPath": "stylecop.analyzers.unstable.1.2.0.556.nupkg.sha512"
+ },
+ "System.Buffers/4.5.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-pL2ChpaRRWI/p4LXyy4RgeWlYF2sgfj/pnVMvBqwNFr5cXg7CXNnWZWxrOONLg8VGdFB8oB+EG2Qw4MLgTOe+A==",
+ "path": "system.buffers/4.5.0",
+ "hashPath": "system.buffers.4.5.0.nupkg.sha512"
+ },
+ "System.Globalization/4.3.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==",
+ "path": "system.globalization/4.3.0",
+ "hashPath": "system.globalization.4.3.0.nupkg.sha512"
+ },
+ "System.Runtime/4.3.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==",
+ "path": "system.runtime/4.3.0",
+ "hashPath": "system.runtime.4.3.0.nupkg.sha512"
+ },
+ "System.Text.Encodings.Web/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==",
+ "path": "system.text.encodings.web/8.0.0",
+ "hashPath": "system.text.encodings.web.8.0.0.nupkg.sha512"
+ },
+ "System.Text.Json/8.0.4": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-bAkhgDJ88XTsqczoxEMliSrpijKZHhbJQldhAmObj/RbrN3sU5dcokuXmWJWsdQAhiMJ9bTayWsL1C9fbbCRhw==",
+ "path": "system.text.json/8.0.4",
+ "hashPath": "system.text.json.8.0.4.nupkg.sha512"
+ },
+ "System.Threading.Tasks.Dataflow/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-4pjq2vIPNZkKA9asAXzf5IRBb7K+b0+UQZZbpv6g029sAPZgnKdg/NNOC/DbJL8SWqYcFMVjb/T/YEmb0PHUYg==",
+ "path": "system.threading.tasks.dataflow/8.0.1",
+ "hashPath": "system.threading.tasks.dataflow.8.0.1.nupkg.sha512"
+ }
+ }
+}
\ No newline at end of file
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
new file mode 100644
index 0000000..aeec84b
Binary files /dev/null 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
new file mode 100644
index 0000000..27976f6
Binary files /dev/null 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
new file mode 100644
index 0000000..57f9a64
--- /dev/null
+++ b/Jellyfin.Plugin.Seasonals/bin/Release/net9.0/Jellyfin.Plugin.Seasonals.xml
@@ -0,0 +1,55 @@
+
+
+
+ Jellyfin.Plugin.Seasonals
+
+
+
+
+ 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.
+
+
+
+
+
+
+
diff --git a/bin/Publish/Jellyfin.Plugin.Seasonals.deps.json b/bin/Publish/Jellyfin.Plugin.Seasonals.deps.json
new file mode 100644
index 0000000..589e975
--- /dev/null
+++ b/bin/Publish/Jellyfin.Plugin.Seasonals.deps.json
@@ -0,0 +1,468 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v9.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v9.0": {
+ "Jellyfin.Plugin.Seasonals/0.0.0.0": {
+ "dependencies": {
+ "Jellyfin.Controller": "10.9.11",
+ "Jellyfin.Model": "10.9.11",
+ "SerilogAnalyzer": "0.15.0",
+ "SmartAnalyzers.MultithreadingAnalyzer": "1.1.31",
+ "StyleCop.Analyzers": "1.2.0-beta.556"
+ },
+ "runtime": {
+ "Jellyfin.Plugin.Seasonals.dll": {}
+ }
+ },
+ "Diacritics/3.3.29": {},
+ "ICU4N/60.1.0-alpha.356": {
+ "dependencies": {
+ "J2N": "2.0.0",
+ "Microsoft.Extensions.Caching.Memory": "2.0.0"
+ }
+ },
+ "ICU4N.Transliterator/60.1.0-alpha.356": {
+ "dependencies": {
+ "ICU4N": "60.1.0-alpha.356"
+ }
+ },
+ "J2N/2.0.0": {},
+ "Jellyfin.Common/10.9.11": {
+ "dependencies": {
+ "Jellyfin.Model": "10.9.11",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1"
+ }
+ },
+ "Jellyfin.Controller/10.9.11": {
+ "dependencies": {
+ "Jellyfin.Common": "10.9.11",
+ "Jellyfin.Model": "10.9.11",
+ "Jellyfin.Naming": "10.9.11",
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0",
+ "Microsoft.Extensions.Configuration.Binder": "8.0.2",
+ "System.Threading.Tasks.Dataflow": "8.0.1"
+ }
+ },
+ "Jellyfin.Data/10.9.11": {
+ "dependencies": {
+ "Microsoft.Extensions.Logging": "8.0.0"
+ }
+ },
+ "Jellyfin.Extensions/10.9.11": {
+ "dependencies": {
+ "Diacritics": "3.3.29",
+ "ICU4N.Transliterator": "60.1.0-alpha.356"
+ }
+ },
+ "Jellyfin.Model/10.9.11": {
+ "dependencies": {
+ "Jellyfin.Data": "10.9.11",
+ "Jellyfin.Extensions": "10.9.11",
+ "Microsoft.AspNetCore.HttpOverrides": "2.2.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.1",
+ "System.Globalization": "4.3.0",
+ "System.Text.Json": "8.0.4"
+ }
+ },
+ "Jellyfin.Naming/10.9.11": {
+ "dependencies": {
+ "Jellyfin.Common": "10.9.11",
+ "Jellyfin.Model": "10.9.11"
+ }
+ },
+ "Microsoft.AspNetCore.Http.Abstractions/2.2.0": {
+ "dependencies": {
+ "Microsoft.AspNetCore.Http.Features": "2.2.0",
+ "System.Text.Encodings.Web": "8.0.0"
+ }
+ },
+ "Microsoft.AspNetCore.Http.Extensions/2.2.0": {
+ "dependencies": {
+ "Microsoft.AspNetCore.Http.Abstractions": "2.2.0",
+ "Microsoft.Extensions.FileProviders.Abstractions": "2.2.0",
+ "Microsoft.Net.Http.Headers": "2.2.0",
+ "System.Buffers": "4.5.0"
+ }
+ },
+ "Microsoft.AspNetCore.Http.Features/2.2.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.AspNetCore.HttpOverrides/2.2.0": {
+ "dependencies": {
+ "Microsoft.AspNetCore.Http.Extensions": "2.2.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.1",
+ "Microsoft.Extensions.Options": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Caching.Abstractions/2.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Caching.Memory/2.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Caching.Abstractions": "2.0.0",
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1",
+ "Microsoft.Extensions.Options": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Configuration.Binder/8.0.2": {
+ "dependencies": {
+ "Microsoft.Extensions.Configuration.Abstractions": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1"
+ }
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.1": {},
+ "Microsoft.Extensions.FileProviders.Abstractions/2.2.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Logging/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection": "8.0.0",
+ "Microsoft.Extensions.Logging.Abstractions": "8.0.1",
+ "Microsoft.Extensions.Options": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.1": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1"
+ }
+ },
+ "Microsoft.Extensions.Options/8.0.0": {
+ "dependencies": {
+ "Microsoft.Extensions.DependencyInjection.Abstractions": "8.0.1",
+ "Microsoft.Extensions.Primitives": "8.0.0"
+ }
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {},
+ "Microsoft.Net.Http.Headers/2.2.0": {
+ "dependencies": {
+ "Microsoft.Extensions.Primitives": "8.0.0",
+ "System.Buffers": "4.5.0"
+ }
+ },
+ "Microsoft.NETCore.Platforms/1.1.0": {},
+ "Microsoft.NETCore.Targets/1.1.0": {},
+ "SerilogAnalyzer/0.15.0": {},
+ "SmartAnalyzers.MultithreadingAnalyzer/1.1.31": {},
+ "StyleCop.Analyzers/1.2.0-beta.556": {
+ "dependencies": {
+ "StyleCop.Analyzers.Unstable": "1.2.0.556"
+ }
+ },
+ "StyleCop.Analyzers.Unstable/1.2.0.556": {},
+ "System.Buffers/4.5.0": {},
+ "System.Globalization/4.3.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.1.0",
+ "Microsoft.NETCore.Targets": "1.1.0",
+ "System.Runtime": "4.3.0"
+ }
+ },
+ "System.Runtime/4.3.0": {
+ "dependencies": {
+ "Microsoft.NETCore.Platforms": "1.1.0",
+ "Microsoft.NETCore.Targets": "1.1.0"
+ }
+ },
+ "System.Text.Encodings.Web/8.0.0": {},
+ "System.Text.Json/8.0.4": {
+ "dependencies": {
+ "System.Text.Encodings.Web": "8.0.0"
+ }
+ },
+ "System.Threading.Tasks.Dataflow/8.0.1": {}
+ }
+ },
+ "libraries": {
+ "Jellyfin.Plugin.Seasonals/0.0.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "Diacritics/3.3.29": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-yrbxg/3T2af17np2XIjRbRXWM1OdtwJof9xg3qRj7D3s9AYkuEpD4UMCsNvnj//GHvzN9hw79ceh4z8Fhlvvhw==",
+ "path": "diacritics/3.3.29",
+ "hashPath": "diacritics.3.3.29.nupkg.sha512"
+ },
+ "ICU4N/60.1.0-alpha.356": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-YMZtDnjcqWzziOKiE7w6Ma7Rl5vuFDxzOsUlHh1QyfghbNEIZQOLRs9MMfwCWAjX6n9UitrF6vLXy55Z5q+4Fg==",
+ "path": "icu4n/60.1.0-alpha.356",
+ "hashPath": "icu4n.60.1.0-alpha.356.nupkg.sha512"
+ },
+ "ICU4N.Transliterator/60.1.0-alpha.356": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-lFOSO6bbEtB6HkWMNDJAq+rFwVyi9g6xVc5O/2xHa6iZnV7wLVDqCbaQ4W4vIeBSQZAafqhxciaEkmAvSdzlCg==",
+ "path": "icu4n.transliterator/60.1.0-alpha.356",
+ "hashPath": "icu4n.transliterator.60.1.0-alpha.356.nupkg.sha512"
+ },
+ "J2N/2.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-M5bwDajAARZiyqupU+rHQJnsVLxNBOHJ8vKYHd8LcLIb1FgLfzzcJvc31Qo5Xz/GEHFjDF9ScjKL/ks/zRTXuA==",
+ "path": "j2n/2.0.0",
+ "hashPath": "j2n.2.0.0.nupkg.sha512"
+ },
+ "Jellyfin.Common/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-UxXdWzoReqQkV7+MOChNbOX9YBlfx8oz4/GKI7PjBDkzjLCDKiQTcVJk8/GceiMSZ05+5g34qGCp2snO8qRBHQ==",
+ "path": "jellyfin.common/10.9.11",
+ "hashPath": "jellyfin.common.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Controller/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-BT/4AILCNMEKlP3jl1hvktSvCtG2gArwaGGrFIM6C92ioEfuNBIpLdLCAF1k/YnCOE1X0xVE9yp6uCPjb2sPeQ==",
+ "path": "jellyfin.controller/10.9.11",
+ "hashPath": "jellyfin.controller.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Data/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-ovZfELGxQlMsX1voE4wbimWWDbQKfuv1aiggaE6rllZbqCRhWJhKiTB89i4SG62k/plCUIk9k6qxlBfTyCIGjQ==",
+ "path": "jellyfin.data/10.9.11",
+ "hashPath": "jellyfin.data.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Extensions/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-5DmxbMRzqa6AFJAA3mYMlROzRqmFBtSzUVdyaOXwJ3aQgkSktqPJnIqyEoRk4U7FIPoIcS9qmVDXCxvX8VSV6w==",
+ "path": "jellyfin.extensions/10.9.11",
+ "hashPath": "jellyfin.extensions.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Model/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-Cd4hh67oTf46dKNVzNqTyJdYYDczNapvK39GMQK9uqYcjVrRCcxNo8VywXUS7AUud92aG9xWX7QvssbDIWesAA==",
+ "path": "jellyfin.model/10.9.11",
+ "hashPath": "jellyfin.model.10.9.11.nupkg.sha512"
+ },
+ "Jellyfin.Naming/10.9.11": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-0TAifRd4/27s74AGc1tVh3+7MgWLF/xV8z1/lfsI1YtxWWDoM0GN2VLVtaQ7ltcXckCqo1KyHP0uzqGfDls48Q==",
+ "path": "jellyfin.naming/10.9.11",
+ "hashPath": "jellyfin.naming.10.9.11.nupkg.sha512"
+ },
+ "Microsoft.AspNetCore.Http.Abstractions/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-Nxs7Z1q3f1STfLYKJSVXCs1iBl+Ya6E8o4Oy1bCxJ/rNI44E/0f6tbsrVqAWfB7jlnJfyaAtIalBVxPKUPQb4Q==",
+ "path": "microsoft.aspnetcore.http.abstractions/2.2.0",
+ "hashPath": "microsoft.aspnetcore.http.abstractions.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.AspNetCore.Http.Extensions/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-2DgZ9rWrJtuR7RYiew01nGRzuQBDaGHGmK56Rk54vsLLsCdzuFUPqbDTJCS1qJQWTbmbIQ9wGIOjpxA1t0l7/w==",
+ "path": "microsoft.aspnetcore.http.extensions/2.2.0",
+ "hashPath": "microsoft.aspnetcore.http.extensions.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.AspNetCore.Http.Features/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-ziFz5zH8f33En4dX81LW84I6XrYXKf9jg6aM39cM+LffN9KJahViKZ61dGMSO2gd3e+qe5yBRwsesvyqlZaSMg==",
+ "path": "microsoft.aspnetcore.http.features/2.2.0",
+ "hashPath": "microsoft.aspnetcore.http.features.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.AspNetCore.HttpOverrides/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-pOlLQyNKQduGbtbgB55RyTHFeshSfKi3DmofrVjk+UBQjyp+Tm0RNNJFQf+sv34hlFsel+VnD79QyO9Zk/c3oA==",
+ "path": "microsoft.aspnetcore.httpoverrides/2.2.0",
+ "hashPath": "microsoft.aspnetcore.httpoverrides.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Abstractions/2.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-kGMEV53Od1ES0BDh7OOKbTW9Zu5dbbQ72yI936dvvbHlde3puuq/WRKAccFgcB2PuRjox1HFhA9+t53RYqfuEA==",
+ "path": "microsoft.extensions.caching.abstractions/2.0.0",
+ "hashPath": "microsoft.extensions.caching.abstractions.2.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Caching.Memory/2.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-NqvVdYLbX7N2J2Wz9y3zjhE66JRdROiZZsGhA2u4a9IcIq/jzINC/cLM96BHA+TSOZFPxVdWneqB6/yt9u846A==",
+ "path": "microsoft.extensions.caching.memory/2.0.0",
+ "hashPath": "microsoft.extensions.caching.memory.2.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Configuration.Abstractions/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-3lE/iLSutpgX1CC0NOW70FJoGARRHbyKmG7dc0klnUZ9Dd9hS6N/POPWhKhMLCEuNN5nXEY5agmlFtH562vqhQ==",
+ "path": "microsoft.extensions.configuration.abstractions/8.0.0",
+ "hashPath": "microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Configuration.Binder/8.0.2": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-7IQhGK+wjyGrNsPBjJcZwWAr+Wf6D4+TwOptUt77bWtgNkiV8tDEbhFS+dDamtQFZ2X7kWG9m71iZQRj2x3zgQ==",
+ "path": "microsoft.extensions.configuration.binder/8.0.2",
+ "hashPath": "microsoft.extensions.configuration.binder.8.0.2.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-V8S3bsm50ig6JSyrbcJJ8bW2b9QLGouz+G1miK3UTaOWmMtFwNNNzUf4AleyDWUmTrWMLNnFSLEQtxmxgNQnNQ==",
+ "path": "microsoft.extensions.dependencyinjection/8.0.0",
+ "hashPath": "microsoft.extensions.dependencyinjection.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.DependencyInjection.Abstractions/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-fGLiCRLMYd00JYpClraLjJTNKLmMJPnqxMaiRzEBIIvevlzxz33mXy39Lkd48hu1G+N21S7QpaO5ZzKsI6FRuA==",
+ "path": "microsoft.extensions.dependencyinjection.abstractions/8.0.1",
+ "hashPath": "microsoft.extensions.dependencyinjection.abstractions.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.FileProviders.Abstractions/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-EcnaSsPTqx2MGnHrmWOD0ugbuuqVT8iICqSqPzi45V5/MA1LjUNb0kwgcxBGqizV1R+WeBK7/Gw25Jzkyk9bIw==",
+ "path": "microsoft.extensions.fileproviders.abstractions/2.2.0",
+ "hashPath": "microsoft.extensions.fileproviders.abstractions.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-tvRkov9tAJ3xP51LCv3FJ2zINmv1P8Hi8lhhtcKGqM+ImiTCC84uOPEI4z8Cdq2C3o9e+Aa0Gw0rmrsJD77W+w==",
+ "path": "microsoft.extensions.logging/8.0.0",
+ "hashPath": "microsoft.extensions.logging.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Logging.Abstractions/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-RIFgaqoaINxkM2KTOw72dmilDmTrYA0ns2KW4lDz4gZ2+o6IQ894CzmdL3StM2oh7QQq44nCWiqKqc4qUI9Jmg==",
+ "path": "microsoft.extensions.logging.abstractions/8.0.1",
+ "hashPath": "microsoft.extensions.logging.abstractions.8.0.1.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Options/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-JOVOfqpnqlVLUzINQ2fox8evY2SKLYJ3BV8QDe/Jyp21u1T7r45x/R/5QdteURMR5r01GxeJSBBUOCOyaNXA3g==",
+ "path": "microsoft.extensions.options/8.0.0",
+ "hashPath": "microsoft.extensions.options.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Extensions.Primitives/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-bXJEZrW9ny8vjMF1JV253WeLhpEVzFo1lyaZu1vQ4ZxWUlVvknZ/+ftFgVheLubb4eZPSwwxBeqS1JkCOjxd8g==",
+ "path": "microsoft.extensions.primitives/8.0.0",
+ "hashPath": "microsoft.extensions.primitives.8.0.0.nupkg.sha512"
+ },
+ "Microsoft.Net.Http.Headers/2.2.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-iZNkjYqlo8sIOI0bQfpsSoMTmB/kyvmV2h225ihyZT33aTp48ZpF6qYnXxzSXmHt8DpBAwBTX+1s1UFLbYfZKg==",
+ "path": "microsoft.net.http.headers/2.2.0",
+ "hashPath": "microsoft.net.http.headers.2.2.0.nupkg.sha512"
+ },
+ "Microsoft.NETCore.Platforms/1.1.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-kz0PEW2lhqygehI/d6XsPCQzD7ff7gUJaVGPVETX611eadGsA3A877GdSlU0LRVMCTH/+P3o2iDTak+S08V2+A==",
+ "path": "microsoft.netcore.platforms/1.1.0",
+ "hashPath": "microsoft.netcore.platforms.1.1.0.nupkg.sha512"
+ },
+ "Microsoft.NETCore.Targets/1.1.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-aOZA3BWfz9RXjpzt0sRJJMjAscAUm3Hoa4UWAfceV9UTYxgwZ1lZt5nO2myFf+/jetYQo4uTP7zS8sJY67BBxg==",
+ "path": "microsoft.netcore.targets/1.1.0",
+ "hashPath": "microsoft.netcore.targets.1.1.0.nupkg.sha512"
+ },
+ "SerilogAnalyzer/0.15.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-sVpwfls4MfNnwIXLSGCgaUnV+c9kgJ8ia6GsyRcpd4Vs3gLogSDtSYBYrre2K2u/PNMo8GgG09RehwVnze70Tw==",
+ "path": "seriloganalyzer/0.15.0",
+ "hashPath": "seriloganalyzer.0.15.0.nupkg.sha512"
+ },
+ "SmartAnalyzers.MultithreadingAnalyzer/1.1.31": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-2f2k7bbhDd132ArglCKpzKoWBcp3uzbIFcb4aosnlqIKlfYKDE2HevBVRNVa+LkWFnjXFFWs47Bo96fu8iS//Q==",
+ "path": "smartanalyzers.multithreadinganalyzer/1.1.31",
+ "hashPath": "smartanalyzers.multithreadinganalyzer.1.1.31.nupkg.sha512"
+ },
+ "StyleCop.Analyzers/1.2.0-beta.556": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-llRPgmA1fhC0I0QyFLEcjvtM2239QzKr/tcnbsjArLMJxJlu0AA5G7Fft0OI30pHF3MW63Gf4aSSsjc5m82J1Q==",
+ "path": "stylecop.analyzers/1.2.0-beta.556",
+ "hashPath": "stylecop.analyzers.1.2.0-beta.556.nupkg.sha512"
+ },
+ "StyleCop.Analyzers.Unstable/1.2.0.556": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-zvn9Mqs/ox/83cpYPignI8hJEM2A93s2HkHs8HYMOAQW0PkampyoErAiIyKxgTLqbbad29HX/shv/6LGSjPJNQ==",
+ "path": "stylecop.analyzers.unstable/1.2.0.556",
+ "hashPath": "stylecop.analyzers.unstable.1.2.0.556.nupkg.sha512"
+ },
+ "System.Buffers/4.5.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-pL2ChpaRRWI/p4LXyy4RgeWlYF2sgfj/pnVMvBqwNFr5cXg7CXNnWZWxrOONLg8VGdFB8oB+EG2Qw4MLgTOe+A==",
+ "path": "system.buffers/4.5.0",
+ "hashPath": "system.buffers.4.5.0.nupkg.sha512"
+ },
+ "System.Globalization/4.3.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==",
+ "path": "system.globalization/4.3.0",
+ "hashPath": "system.globalization.4.3.0.nupkg.sha512"
+ },
+ "System.Runtime/4.3.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==",
+ "path": "system.runtime/4.3.0",
+ "hashPath": "system.runtime.4.3.0.nupkg.sha512"
+ },
+ "System.Text.Encodings.Web/8.0.0": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-yev/k9GHAEGx2Rg3/tU6MQh4HGBXJs70y7j1LaM1i/ER9po+6nnQ6RRqTJn1E7Xu0fbIFK80Nh5EoODxrbxwBQ==",
+ "path": "system.text.encodings.web/8.0.0",
+ "hashPath": "system.text.encodings.web.8.0.0.nupkg.sha512"
+ },
+ "System.Text.Json/8.0.4": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-bAkhgDJ88XTsqczoxEMliSrpijKZHhbJQldhAmObj/RbrN3sU5dcokuXmWJWsdQAhiMJ9bTayWsL1C9fbbCRhw==",
+ "path": "system.text.json/8.0.4",
+ "hashPath": "system.text.json.8.0.4.nupkg.sha512"
+ },
+ "System.Threading.Tasks.Dataflow/8.0.1": {
+ "type": "package",
+ "serviceable": true,
+ "sha512": "sha512-4pjq2vIPNZkKA9asAXzf5IRBb7K+b0+UQZZbpv6g029sAPZgnKdg/NNOC/DbJL8SWqYcFMVjb/T/YEmb0PHUYg==",
+ "path": "system.threading.tasks.dataflow/8.0.1",
+ "hashPath": "system.threading.tasks.dataflow.8.0.1.nupkg.sha512"
+ }
+ }
+}
\ No newline at end of file
diff --git a/bin/Publish/Jellyfin.Plugin.Seasonals.dll b/bin/Publish/Jellyfin.Plugin.Seasonals.dll
new file mode 100644
index 0000000..aeec84b
Binary files /dev/null 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
new file mode 100644
index 0000000..27976f6
Binary files /dev/null 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
new file mode 100644
index 0000000..57f9a64
--- /dev/null
+++ b/bin/Publish/Jellyfin.Plugin.Seasonals.xml
@@ -0,0 +1,55 @@
+
+
+
+ Jellyfin.Plugin.Seasonals
+
+
+
+
+ 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.
+
+
+
+
+
+
+
diff --git a/bin/Publish/Jellyfin.Plugin.Seasonals.zip b/bin/Publish/Jellyfin.Plugin.Seasonals.zip
new file mode 100644
index 0000000..3a2bcb9
Binary files /dev/null and b/bin/Publish/Jellyfin.Plugin.Seasonals.zip differ