binded values to parameters

This commit is contained in:
mmacierzanka committed 2021-08-07 23:44:37 +02:00
1 parent af390743db
commit e34531094c
1 file changed
+8 -7
+8 -7
View File
@@ -249,31 +249,32 @@ export class CommandManager {
parameters: parameters, parameters: parameters,
}; };
} else if (interaction.options?.data) { } else if (interaction.options?.data) {
const paramsList = interaction.options.data.map((o) => o.value); const paramsList = interaction.options.data;
const parameters: InputParameter[] = []; const parameters: InputParameter[] = [];
cmd.parameters.map((p, i) => { cmd.parameters.map((p) => {
if (!p.optional && !paramsList[i]) { const inputParam = paramsList.find((d) => d.name == p.name);
if (!p.optional && !inputParam) {
throw new MissingParameterError(p); throw new MissingParameterError(p);
} }
switch (p.type) { switch (p.type) {
case "string": case "string":
parameters.push( parameters.push(
new StringParameter(p, paramsList[i]) new StringParameter(p, inputParam?.value)
); );
break; break;
case "boolean": case "boolean":
parameters.push( parameters.push(
new BooleanParameter(p, paramsList[i]) new BooleanParameter(p, inputParam?.value)
); );
break; break;
case "number": case "number":
parameters.push( parameters.push(
new NumberParameter(p, paramsList[i]) new NumberParameter(p, inputParam?.value)
); );
break; break;
default: default:
parameters.push( parameters.push(
new InputParameter(p, paramsList[i]) new InputParameter(p, inputParam?.value)
); );
break; break;
} }