Files
classroomio/apps
Rotimi BestandRotimi Best dc55f936a1 fix(dashboard): persist notification preferences after save (#824)
* fix(dashboard): persist notification preferences after save

Personal notification toggles were reset when a stale GET response
arrived after save. Org toggles also triggered a spurious org save
because change detection compared against stale currentOrg settings,
and the UI reset because currentOrg was not updated after org save.

Co-authored-by: Rotimi Best <[email protected]>

* refactor(dashboard): send only changed settings key and tidy load guard

The org update endpoint deep-merges settings server-side, so spreading
local settings into the payload risked writing stale values over
unrelated keys. Also drop a redundant load-version bump and let only
the latest in-flight preferences load clear the loading flag.

Co-authored-by: Rotimi Best <[email protected]>

* refactor(dashboard): hydrate org notification defaults on org id transition

The sync effect read orgHasChanges and savedOrgToggles while writing them
through applyOrgToggleState, causing an extra effect pass after hydration.
/account returns settings together with the org id and role, so gating
hydration on org id transitions is sufficient and also discards unsaved
edits when switching orgs instead of saving them against the wrong org.

Addresses CodeRabbit review on PR #824.

Co-authored-by: Rotimi Best <[email protected]>

---------
2026-08-03 02:18:26 +01:00
..