From 0bef197521e783a8c3755d51af244e1eb5a3a72d Mon Sep 17 00:00:00 2001 From: FoxxMD Date: Mon, 6 Apr 2026 14:06:05 +0000 Subject: [PATCH] feat(yandex): Add env source config --- src/backend/sources/ScrobbleSources.ts | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/backend/sources/ScrobbleSources.ts b/src/backend/sources/ScrobbleSources.ts index 2b956224..3712d3ce 100644 --- a/src/backend/sources/ScrobbleSources.ts +++ b/src/backend/sources/ScrobbleSources.ts @@ -33,7 +33,7 @@ import { SubsonicData, SubSonicSourceConfig } from "../common/infrastructure/con import { VLCData, VLCSourceConfig } from "../common/infrastructure/config/source/vlc.js"; import { WebScrobblerSourceConfig } from "../common/infrastructure/config/source/webscrobbler.js"; import { YTMusicData, YTMusicSourceConfig } from "../common/infrastructure/config/source/ytmusic.js"; -import { YandexMusicBridgeSourceConfig } from "../common/infrastructure/config/source/ymbridge.js"; +import { YandexMusicBridgeData, YandexMusicBridgeSourceConfig } from "../common/infrastructure/config/source/ymbridge.js"; import { SonosData, SonosSourceConfig } from "../common/infrastructure/config/source/sonos.js"; import { WildcardEmitter } from "../common/WildcardEmitter.js"; import { parseBool } from "../utils.js"; @@ -793,7 +793,24 @@ export default class ScrobbleSources { options: transformPresetEnv('SONOS') }); } - } break; + } break; + case 'ymbridge': { + const yandex: YandexMusicBridgeData = { + url: process.env.YMBRIDGE_URL, + apiKey: process.env.YMBRIDGE_API_KEY, + } + if (!Object.values(yandex).every(x => x === undefined)) { + configs.push({ + type: 'ymbridge', + name: 'unnamed', + source: 'ENV', + mode: 'single', + configureAs: defaultConfigureAs, + data: yandex, + options: transformPresetEnv('YMBRIDGE') + }); + } + } break; default: break; } -- 2.51.2