Merge pull request #3819 from SillyTavern/feat/reasoning-set-collapse-state Add collapse argument to `/reasoning-set` slash command

965c2ee29a4190417c76470f8085ff63a52fca1d

Cohee <18619528+Cohee1207@users.noreply.github.com>

Signed
1 files changed, +9 -0Ignore whitespace
public/scripts/reasoning.js+9 -0
@@ -832,6 +832,12 @@ function registerReasoningSlashCommands() {
832832 typeList: ARGUMENT_TYPE.NUMBER,
833833 enumProvider: commonEnumProviders.messages(),
834834 }),
835+ SlashCommandNamedArgument.fromProps({
836+ name: 'collapse',
837+ description: 'Whether to collapse the reasoning block. (If not provided, uses the default expand setting)',
838+ typeList: [ARGUMENT_TYPE.BOOLEAN],
839+ enumList: commonEnumProviders.boolean('trueFalse')(),
840+ }),
835841 ],
836842 unnamedArgumentList: [
837843 SlashCommandArgument.fromProps({
@@ -856,6 +862,9 @@ function registerReasoningSlashCommands() {
856862
857863 closeMessageEditor('reasoning');
858864 updateMessageBlock(messageId, message);
865+
866+ if (isTrueBoolean(String(args.collapse))) $(`#chat [mesid="${messageId}"] .mes_reasoning_details`).removeAttr('open');
867+ if (isFalseBoolean(String(args.collapse))) $(`#chat [mesid="${messageId}"] .mes_reasoning_details`).attr('open', '');
859868 return message.extra.reasoning;
860869 },
861870 }));