Use SlashCommandEnumValue
| @@ -736,7 +736,7 @@ export function initDefaultSlashCommands() { | |||
| 736 | SlashCommandParser.addCommandObject(SlashCommand.fromProps({ | 736 | SlashCommandParser.addCommandObject(SlashCommand.fromProps({ |
| 737 | name: 'member-get', | 737 | name: 'member-get', |
| 738 | aliases: ['getmember', 'memberget'], | 738 | aliases: ['getmember', 'memberget'], |
| 739 | callback: (async ({field = 'name'}, arg) => { | 739 | callback: (async ({ field = 'name' }, arg) => { |
| 740 | if (!selected_group) { | 740 | if (!selected_group) { |
| 741 | toastr.warning('Cannot run /member-get command outside of a group chat.'); | 741 | toastr.warning('Cannot run /member-get command outside of a group chat.'); |
| 742 | return ''; | 742 | return ''; |
| @@ -745,6 +745,8 @@ export function initDefaultSlashCommands() { | |||
| 745 | toastr.warning('\'/member-get field=\' argument required!'); | 745 | toastr.warning('\'/member-get field=\' argument required!'); |
| 746 | return ''; | 746 | return ''; |
| 747 | } | 747 | } |
| 748 | field = field.toString(); | ||
| 749 | arg = arg.toString(); | ||
| 748 | if (!['name', 'index', 'id', 'avatar'].includes(field)) { | 750 | if (!['name', 'index', 'id', 'avatar'].includes(field)) { |
| 749 | toastr.warning('\'/member-get field=\' argument required!'); | 751 | toastr.warning('\'/member-get field=\' argument required!'); |
| 750 | return ''; | 752 | return ''; |
| @@ -752,7 +754,7 @@ export function initDefaultSlashCommands() { | |||
| 752 | const isId = !isNaN(parseInt(arg)); | 754 | const isId = !isNaN(parseInt(arg)); |
| 753 | const groupMember = findGroupMemberId(arg, true); | 755 | const groupMember = findGroupMemberId(arg, true); |
| 754 | if (!groupMember) { | 756 | if (!groupMember) { |
| 755 | toastr.warn(`No group member found using ${isId?'id':'string'} ${arg}`); | 757 | toastr.warn(`No group member found using ${isId ? 'id' : 'string'} ${arg}`); |
| 756 | return ''; | 758 | return ''; |
| 757 | } | 759 | } |
| 758 | return groupMember[field]; | 760 | return groupMember[field]; |
| @@ -764,7 +766,12 @@ export function initDefaultSlashCommands() { | |||
| 764 | typeList: [ARGUMENT_TYPE.STRING], | 766 | typeList: [ARGUMENT_TYPE.STRING], |
| 765 | isRequired: true, | 767 | isRequired: true, |
| 766 | defaultValue: 'name', | 768 | 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 | ], | ||
| 768 | }), | 775 | }), |
| 769 | ], | 776 | ], |
| 770 | unnamedArgumentList: [ | 777 | unnamedArgumentList: [ |