From 98bce1b0da675715b2e5482c0ad61ba21135f62f Mon Sep 17 00:00:00 2001
From: Server-Bibliothek <server-bibliothek@lokal>
Date: Di, 04 Aug 2026 07:00:04 +0200
Subject: [PATCH] Add a desktop client that knows what is installed locally
---
packages/bibliothek-server/src/bezugsquellen/index.ts | 25 +++++++++++++++++++++++++
1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/packages/bibliothek-server/src/bezugsquellen/index.ts b/packages/bibliothek-server/src/bezugsquellen/index.ts
new file mode 100644
index 0000000..39a2459
--- /dev/null
+++ b/packages/bibliothek-server/src/bezugsquellen/index.ts
@@ -0,0 +1,25 @@
+import type { QuelleTyp } from 'bibliothek-types';
+import type { Bezugsquelle } from './basis';
+import { DirektLinkQuelle } from './direkt-link';
+import { GithubQuelle } from './github';
+import { WingetQuelle } from './winget';
+import { SvnQuelle } from './svn';
+import { GitBuildQuelle } from './git-build';
+
+export type { Abgleichauftrag, Bezugsquelle, QuellenAbgleich } from './basis';
+
+// Registry der automatisch abgleichbaren Bezugsquellen. Eine neue Quellenart
+// hinzufügen = hier einen Eintrag ergänzen. `manuell` fehlt bewusst: dort wird
+// die Datei von Hand hinterlegt, es gibt nichts abzugleichen.
+const registry: Partial<Record<QuelleTyp, Bezugsquelle>> = {
+ direkt: new DirektLinkQuelle(),
+ github: new GithubQuelle(),
+ winget: new WingetQuelle(),
+ svn: new SvnQuelle(),
+ git: new GitBuildQuelle(),
+};
+
+/** Liefert den Handler für einen Quell-Typ (oder undefined, falls unbekannt). */
+export function bezugsquelleFuer(typ: QuelleTyp): Bezugsquelle | undefined {
+ return registry[typ];
+}
--
Gitblit v1.9.3