Skip to content

Round-trip Seerr discover sliders in homeSections - #280

Closed
selmant wants to merge 2 commits into
Moonfin-Client:masterfrom
selmant:feat/seerr-custom-sliders
Closed

selmant wants to merge 2 commits into
Moonfin-Client:masterfrom
selmant:feat/seerr-custom-sliders

Conversation

@selmant

@selmant selmant commented Sep 9, 2026

Copy link
Copy Markdown

Pull Request

Summary

Persist Foreseerr/Seerr discover sliders in homeSections as kind: seerrSlider (with sliderId / sliderType) instead of inventing a plugin type table. The Jellyfin Seerr home-layout tab only treats seerr_ types as Seerr rows, matching Emby, so Radarr/Sonarr calendars stay off that tab.

Companion client: Moonfin-Core #1407 (draft).

Related Issues

Type of Change

  • Bug fix
  • New feature
  • Refactor
  • Performance improvement
  • API / endpoint change
  • Settings schema change
  • Documentation update
  • Build/CI change
  • Other (describe):

Area

  • Settings sync / profiles
  • Admin defaults / config page
  • Ratings (MDBList / TMDB)
  • Notifications / Push (FCM / relay)
  • Seerr integration
  • Games / Emulators
  • Custom home rows
  • Web Client (Go to Moonfin-Core repo)
  • Other / shared

Changes Made

  • Add additive sliderId / sliderType on home section config for Jellyfin and Emby.
  • Admin JS round-trips discover sliders as kind: seerrSlider without a type enum.
  • Derive homeRowOrder from builtin sections only (skip seerr_slider / non-builtin kinds).
  • Jellyfin Seerr tab uses the same seerr_ prefix rule as Emby (no Radarr/Sonarr there).

Client Impact

Does this need matching changes in a client repo (Core, Smart-TV, Roku)?

Compatibility

  • Change to the settings profile is additive only, no renamed or removed properties
  • New properties use the same type the client sends (a client bool maps to bool?, an int to int?)
  • Migration added for any renamed or removed settings
  • Older clients still work, unknown fields are ignored and no keys were removed

Testing

Describe how this change was tested.

  • Built the plugin and deployed to a Jellyfin server
  • Verified against a live client (which one: Moonfin-Core Linux desktop on feat/seerr-custom-sliders)
  • Manual testing completed
  • Not tested (explain why):

Test Steps

  1. Open Dashboard → Moonbase → Home layout / Seerr and confirm Foreseerr discover sliders list.
  2. Enable a slider, save, and confirm homeSections stores kind: seerrSlider with sliderId / sliderType.
  3. Confirm Radarr/Sonarr rows do not appear on the Jellyfin Seerr tab.
  4. Confirm a Moonfin client on the companion branch can show enabled slider rows on Home.

Screenshots (if applicable)

Checklist

  • Code builds successfully
  • Code follows project style and conventions
  • No unnecessary commented-out code
  • No new warnings introduced
  • Any new setting keys match the client-side keys exactly

Made with Cursor

selmant and others added 2 commits September 9, 2026 20:08
…e table

Persist sliderId and sliderType, keep disabled stubs, and only emit builtins in homeRowOrder so Moonbase does not strip slider identity.

Co-authored-by: Cursor <cursoragent@cursor.com>
Match Emby: only types that start with seerr_ belong there. Rename isSeerrCustomSliderType to isSeerrSliderType.

Co-authored-by: Cursor <cursoragent@cursor.com>
@selmant

selmant commented Sep 12, 2026

Copy link
Copy Markdown
Author

Superseded by #286 (companion client Moonfin-Client/Moonfin-Core#1520).

Closing this draft. The new PR keeps the seerrSlider round-trip, lists types n >= 1, and adds the one-shot migrate for old seerr_* home types.

@selmant selmant closed this Sep 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant