Migrating reference settings to mongo and exposing them through code … (#31726)

* Migrating reference settings to mongo and exposing them through code mirror context

* removing undefined optional for reference manager type settings

* allowing partial updates to user settings objects, and remove repeated cypress intercepts

* Zod schema parsing for user reference manager settings

* Splitting ref provider mongoose schema into const

* Persisting local storage reference settings to mongo and deleting from local

* Enforcing ref provider group id to always be type string

* Fixing test and format errors

* Migrated flag for settings to only migrate once

* fixing cypress tests adding migrated flag

* persisting local storage to allow for easy rollback

GitOrigin-RevId: f59522bdee6f0e56efb7d98b9d9373a743619ec8
This commit is contained in:
l-obrien-overleaf
2026-03-26 09:07:40 +00:00
committed by Copybot
parent 03c30a9d1b
commit 27e5044d30
9 changed files with 368 additions and 0 deletions
+10
View File
@@ -3,6 +3,13 @@ import { FontFamily, LineHeight, OverallTheme } from '@/shared/utils/styles'
export type Keybindings = 'none' | 'default' | 'vim' | 'emacs'
export type PdfViewer = 'pdfjs' | 'native'
export type RefProviderSettings = {
enabled: boolean
disablePersonalLibrary: boolean
groups: { id: string }[]
migrated?: boolean
}
export type UserSettings = {
pdfViewer: PdfViewer
autoComplete: boolean
@@ -20,4 +27,7 @@ export type UserSettings = {
referencesSearchMode: 'advanced' | 'simple'
breadcrumbs: boolean
darkModePdf: boolean
zotero: RefProviderSettings
mendeley: RefProviderSettings
papers: RefProviderSettings
}