Use SlashCommandEnumValue

9c31c21d79f8275172886e19c213555ce6de98d1

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

1 files changed, +10 -3Ignore whitespace
public/scripts/slash-commands.js+10 -3
@@ -736,7 +736,7 @@ export function initDefaultSlashCommands() {
736736 SlashCommandParser.addCommandObject(SlashCommand.fromProps({
737737 name: 'member-get',
738738 aliases: ['getmember', 'memberget'],
739739 callback: (async ({ field = 'name' }, arg) => {
740740 if (!selected_group) {
741741 toastr.warning('Cannot run /member-get command outside of a group chat.');
742742 return '';
@@ -745,6 +745,8 @@ export function initDefaultSlashCommands() {
745745 toastr.warning('\'/member-get field=\' argument required!');
746746 return '';
747747 }
748+ field = field.toString();
749+ arg = arg.toString();
748750 if (!['name', 'index', 'id', 'avatar'].includes(field)) {
749751 toastr.warning('\'/member-get field=\' argument required!');
750752 return '';
@@ -752,7 +754,7 @@ export function initDefaultSlashCommands() {
752754 const isId = !isNaN(parseInt(arg));
753755 const groupMember = findGroupMemberId(arg, true);
754756 if (!groupMember) {
755757 toastr.warn(`No group member found using ${isId ? 'id' : 'string'} ${arg}`);
756758 return '';
757759 }
758760 return groupMember[field];
@@ -764,7 +766,12 @@ export function initDefaultSlashCommands() {
764766 typeList: [ARGUMENT_TYPE.STRING],
765767 isRequired: true,
766768 defaultValue: 'name',
767- enumList: ['name', 'index', 'id', 'avatar'],
769+ enumList: [
770+ new SlashCommandEnumValue('name', 'Character name'),
771+ new SlashCommandEnumValue('index', 'Group member index'),
772+ new SlashCommandEnumValue('avatar', 'Character avatar'),
773+ new SlashCommandEnumValue('id', 'Character index'),
774+ ],
768775 }),
769776 ],
770777 unnamedArgumentList: [