Module: RouterAddons/visibilityProxy

Addon Visibility Proxy — leitet visibilityCheck-Pfade an den Bot-Host weiter Die Host-App ruft `apiSelect(a.visibilityCheck.replace('{UID}', UID))` gegen den Members-Host auf (siehe members-app src/show/group/Group.jsx). Der visibilityCheck ist ein relativer Pfad wie `/project-bot/groups/{UID}/visibility`. Dieses Modul stellt einen generischen Proxy bereit: Für jede Anfrage wird aus den registrierten Addons (Runtime-Config-Cache) der passende Bot-Host ermittelt — abgeleitet aus der `url` des Addons (`https://{botHost}/addons/...`). Die Anfrage wird unverändert (Headers, Query, Body) an den Bot weitergeleitet. Der Proxy ist bewusst generisch gehalten, damit jeder Bot mit `visibilityCheck` funktioniert, ohne dass der Members-Host Bot-spezifische Routen kennt.
Source:

Methods

(inner) buildPrefixMap() → {Map.<string, string>}

Sammelt aus dem Config-Cache alle Addons mit `visibilityCheck` und leitet daraus das Präfix → Bot-Basis-URL Mapping ab.
Source:
Returns:
Map: Pfad-Präfix (z.B. `/project-bot`) → Basis-URL (z.B. `https://project-bot.dev.commtool.org`)
Type
Map.<string, string>

(async, inner) proxyHandler()

Proxy-Middleware: leitet Anfragen, deren Pfad mit einem visibilityCheck-Präfix beginnt, an den zugehörigen Bot-Host weiter. Für alle anderen Pfade ruft sie `next()` auf, damit bestehende Routen nicht blockiert werden.
Source:

(inner) visibilityPrefix(visibilityCheck) → {string|null}

Extrahiert das statische Präfix aus einem visibilityCheck-Pfad. `/project-bot/groups/{UID}/visibility` → `/project-bot`
Parameters:
Name Type Description
visibilityCheck string
Source:
Returns:
Präfix oder `null` wenn keines ableitbar
Type
string | null