mirror of
https://github.com/jeffvli/feishin.git
synced 2026-07-22 10:26:33 +02:00
Add support for OpenSubsonic enhanced lyrics (#2208)
This commit is contained in:
@@ -571,6 +571,8 @@ const LyricsDisplaySettingsSchema = z.object({
|
||||
gap: z.number(),
|
||||
gapUnsync: z.number(),
|
||||
opacityNonActive: z.number(),
|
||||
paddingLeft: z.number(),
|
||||
paddingRight: z.number(),
|
||||
scaleNonActive: z.number(),
|
||||
});
|
||||
|
||||
@@ -583,6 +585,8 @@ const LyricsSettingsSchema = z.object({
|
||||
enableRomaji: z.boolean().optional(),
|
||||
fetch: z.boolean(),
|
||||
follow: z.boolean(),
|
||||
followScrollAlignment: z.number(),
|
||||
lineLeadTimeMs: z.number(),
|
||||
preferLocalLyrics: z.boolean(),
|
||||
showMatch: z.boolean(),
|
||||
showProvider: z.boolean(),
|
||||
@@ -1857,6 +1861,8 @@ const initialState: SettingsState = {
|
||||
enableRomaji: false,
|
||||
fetch: true,
|
||||
follow: true,
|
||||
followScrollAlignment: 0,
|
||||
lineLeadTimeMs: 800,
|
||||
preferLocalLyrics: true,
|
||||
showMatch: true,
|
||||
showProvider: true,
|
||||
@@ -1872,6 +1878,8 @@ const initialState: SettingsState = {
|
||||
gap: 24,
|
||||
gapUnsync: 24,
|
||||
opacityNonActive: 0.2,
|
||||
paddingLeft: 0,
|
||||
paddingRight: 0,
|
||||
scaleNonActive: 0.95,
|
||||
},
|
||||
},
|
||||
@@ -2539,10 +2547,31 @@ export const useSettingsStore = createWithEqualityFn<SettingsSlice>()(
|
||||
);
|
||||
}
|
||||
|
||||
if (version < 30) {
|
||||
for (const [key, displaySettings] of Object.entries(state.lyricsDisplay)) {
|
||||
const legacySettings = displaySettings as typeof displaySettings & {
|
||||
paddingX?: number;
|
||||
};
|
||||
const legacyPaddingX = legacySettings.paddingX ?? 0;
|
||||
|
||||
state.lyricsDisplay[key] = {
|
||||
...displaySettings,
|
||||
paddingLeft: displaySettings.paddingLeft ?? legacyPaddingX,
|
||||
paddingRight: displaySettings.paddingRight ?? legacyPaddingX,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
if (version < 31) {
|
||||
if (state.lyrics.followScrollAlignment === undefined) {
|
||||
state.lyrics.followScrollAlignment = 0;
|
||||
}
|
||||
}
|
||||
|
||||
return persistedState;
|
||||
},
|
||||
name: 'store_settings',
|
||||
version: 28,
|
||||
version: 31,
|
||||
},
|
||||
),
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user