Files
navidrome/ui/src/config.js
T
Deluan dce7705999 feat(ui): implement new event stream connection logic
Added a new event stream connection method to enhance the handling of
server events. This includes a reconnect mechanism for improved reliability
in case of connection errors. The configuration now allows toggling the
new event stream feature via `devNewEventStream`. Additionally, tests
were added to ensure the new functionality works as expected, including
reconnection behavior after an error.

Signed-off-by: Deluan <deluan@navidrome.org>
2025-06-29 10:18:05 -04:00

64 lines
1.6 KiB
JavaScript

// These defaults are only used in development mode. When bundled in the app,
// the __APP_CONFIG__ object is dynamically filled by the ServeIndex function,
// in the /server/app/serve_index.go
const defaultConfig = {
version: 'dev',
firstTime: false,
baseURL: '',
variousArtistsId: '63sqASlAfjbGMuLP4JhnZU', // See consts.VariousArtistsID in consts.go
// Login backgrounds from https://unsplash.com/collections/1065384/music-wallpapers
loginBackgroundURL: 'https://source.unsplash.com/collection/1065384/1600x900',
maxSidebarPlaylists: 100,
enableTranscodingConfig: true,
enableDownloads: true,
enableFavourites: true,
losslessFormats: 'FLAC,WAV,ALAC,DSF',
welcomeMessage: '',
gaTrackingId: '',
devActivityPanel: true,
enableStarRating: true,
defaultTheme: 'Dark',
defaultLanguage: '',
defaultUIVolume: 100,
enableUserEditing: true,
enableSharing: true,
shareURL: '',
defaultDownloadableShare: true,
devSidebarPlaylists: true,
lastFMEnabled: true,
listenBrainzEnabled: true,
enableExternalServices: true,
enableCoverAnimation: true,
enableNowPlaying: true,
devShowArtistPage: true,
devUIShowConfig: true,
devNewEventStream: false,
enableReplayGain: true,
defaultDownsamplingFormat: 'opus',
publicBaseUrl: '/share',
separator: '/',
enableInspect: true,
}
let config
try {
const appConfig = JSON.parse(window.__APP_CONFIG__)
config = {
...defaultConfig,
...appConfig,
}
} catch (e) {
config = defaultConfig
}
export let shareInfo
try {
shareInfo = JSON.parse(window.__SHARE_INFO__)
} catch (e) {
shareInfo = null
}
export default config