From d6b3f2e8548d5323e89ebcc91ecb7761de917049 Mon Sep 17 00:00:00 2001 From: gnuxie Date: Fri, 11 Oct 2024 11:01:40 +0100 Subject: [PATCH] Always show help commands. The interface-manager is still a little bit fragile if you give keywords to the help command. --- src/appservice/bot/AppserviceBotHelp.tsx | 11 +++-------- src/commands/Help.tsx | 12 +++--------- src/safemode/commands/HelpCommand.tsx | 9 +++------ 3 files changed, 9 insertions(+), 23 deletions(-) diff --git a/src/appservice/bot/AppserviceBotHelp.tsx b/src/appservice/bot/AppserviceBotHelp.tsx index 9d218f21..9389bb6a 100644 --- a/src/appservice/bot/AppserviceBotHelp.tsx +++ b/src/appservice/bot/AppserviceBotHelp.tsx @@ -11,7 +11,7 @@ import { TopPresentationSchema, describeCommand, } from "@the-draupnir-project/interface-manager"; -import { ActionResult, Ok, isError } from "matrix-protection-suite"; +import { ActionResult, Ok } from "matrix-protection-suite"; import { MatrixAdaptorContext } from "../../commands/interface-manager/MPSMatrixInterfaceAdaptor"; import { AppserviceBotCommands } from "./AppserviceBotCommandTable"; import { renderTableHelp } from "../../commands/interface-manager/MatrixHelpRenderer"; @@ -33,13 +33,8 @@ export const AppserviceBotHelpCommand = describeCommand({ parameters: [], }); -function renderAppserviceBotHelp( - appserviceBotCommands: Result -): Result { - if (isError(appserviceBotCommands)) { - return appserviceBotCommands; - } - return Ok({renderTableHelp(appserviceBotCommands.ok)}); +function renderAppserviceBotHelp(): Result { + return Ok({renderTableHelp(AppserviceBotCommands)}); } AppserviceBotInterfaceAdaptor.describeRenderer(AppserviceBotHelpCommand, { diff --git a/src/commands/Help.tsx b/src/commands/Help.tsx index d92418cf..b5cfc466 100644 --- a/src/commands/Help.tsx +++ b/src/commands/Help.tsx @@ -8,7 +8,7 @@ // https://github.com/matrix-org/mjolnir // -import { Ok, isError } from "matrix-protection-suite"; +import { Ok } from "matrix-protection-suite"; import { CommandTable, DocumentNode, @@ -38,13 +38,7 @@ export const DraupnirHelpCommand = describeCommand({ }); DraupnirInterfaceAdaptor.describeRenderer(DraupnirHelpCommand, { - JSXRenderer(result) { - if (isError(result)) { - throw new TypeError( - `We should always be able to get the base command table` - ); - } else { - return Ok(renderDraupnirHelp(result.ok)); - } + JSXRenderer() { + return Ok(renderDraupnirHelp(DraupnirTopLevelCommands)); }, }); diff --git a/src/safemode/commands/HelpCommand.tsx b/src/safemode/commands/HelpCommand.tsx index 748e1fbc..20070d53 100644 --- a/src/safemode/commands/HelpCommand.tsx +++ b/src/safemode/commands/HelpCommand.tsx @@ -12,7 +12,7 @@ import { TopPresentationSchema, CommandTable, } from "@the-draupnir-project/interface-manager"; -import { Ok, isError } from "matrix-protection-suite"; +import { Ok } from "matrix-protection-suite"; import { renderTableHelp } from "../../commands/interface-manager/MatrixHelpRenderer"; import { safeModeHeader } from "./StatusCommand"; @@ -32,14 +32,11 @@ export const SafeModeHelpCommand = describeCommand({ }); SafeModeInterfaceAdaptor.describeRenderer(SafeModeHelpCommand, { - JSXRenderer(result) { - if (isError(result)) { - throw new TypeError("This should never fail"); - } + JSXRenderer() { return Ok( {safeModeHeader()} - {renderTableHelp(result.ok)} + {renderTableHelp(SafeModeCommands)} ); },