diff --git a/src/settings.ts b/src/settings.ts index e37df51..177ffb4 100644 --- a/src/settings.ts +++ b/src/settings.ts @@ -67,6 +67,8 @@ export interface OmnisearchSettings extends WeightingSettings { httpApiEnabled: boolean httpApiPort: string httpApiNotice: boolean + + DANGER_httpHost: string | null } /** @@ -751,6 +753,8 @@ export function getDefaultSettings(app: App): OmnisearchSettings { welcomeMessage: '', verboseLogging: false, + + DANGER_httpHost: null, } } diff --git a/src/tools/api-server.ts b/src/tools/api-server.ts index ec007a4..53c172c 100644 --- a/src/tools/api-server.ts +++ b/src/tools/api-server.ts @@ -44,11 +44,14 @@ export function getServer(plugin: OmnisearchPlugin) { server.listen( { port: parseInt(port), - host: 'localhost', + host: plugin.settings.DANGER_httpHost ?? 'localhost', }, () => { console.log(`Omnisearch - Started HTTP server on port ${port}`) - if (plugin.settings.httpApiNotice) { + if (plugin.settings.DANGER_httpHost && plugin.settings.DANGER_httpHost !== 'localhost') { + new Notice(`Omnisearch - Started non-localhost HTTP server at ${plugin.settings.DANGER_httpHost}:${port}`, 120_000) + } + else if (plugin.settings.httpApiNotice) { new Notice(`Omnisearch - Started HTTP server on port ${port}`) } }