willuhmjs - ```jsValidationError s.string Exp...
ValidationError > s.string
Expected a string primitive
Received:
| undefined
at StringValidator.handle (/workspaces/Dapper/node_modules/@sapphire/shapeshift/src/validators/StringValidator.ts:77:64)
at StringValidator.parse (/workspaces/Dapper/node_modules/@sapphire/shapeshift/src/validators/BaseValidator.ts:102:48)
at validateRequiredParameters (/workspaces/Dapper/node_modules/@discordjs/builders/src/components/textInput/Assertions.ts:26:17)
at TextInputBuilder.toJSON (/workspaces/Dapper/node_modules/@discordjs/builders/src/components/textInput/TextInput.ts:132:3)
at <anonymous> (/workspaces/Dapper/node_modules/@discordjs/builders/src/components/ActionRow.ts:103:61)
at Array.map (<anonymous>)
at ActionRowBuilder.toJSON (/workspaces/Dapper/node_modules/@discordjs/builders/src/components/ActionRow.ts:103:32)
at <anonymous> (/workspaces/Dapper/node_modules/@discordjs/builders/src/interactions/modals/Modal.ts:82:61)
at Array.map (<anonymous>)
at ModalBuilder.toJSON (/workspaces/Dapper/node_modules/@discordjs/builders/src/interactions/modals/Modal.ts:82:32)
ValidationError > s.string
Expected a string primitive
Received:
| undefined
at StringValidator.handle (/workspaces/Dapper/node_modules/@sapphire/shapeshift/src/validators/StringValidator.ts:77:64)
at StringValidator.parse (/workspaces/Dapper/node_modules/@sapphire/shapeshift/src/validators/BaseValidator.ts:102:48)
at validateRequiredParameters (/workspaces/Dapper/node_modules/@discordjs/builders/src/components/textInput/Assertions.ts:26:17)
at TextInputBuilder.toJSON (/workspaces/Dapper/node_modules/@discordjs/builders/src/components/textInput/TextInput.ts:132:3)
at <anonymous> (/workspaces/Dapper/node_modules/@discordjs/builders/src/components/ActionRow.ts:103:61)
at Array.map (<anonymous>)
at ActionRowBuilder.toJSON (/workspaces/Dapper/node_modules/@discordjs/builders/src/components/ActionRow.ts:103:32)
at <anonymous> (/workspaces/Dapper/node_modules/@discordjs/builders/src/interactions/modals/Modal.ts:82:61)
at Array.map (<anonymous>)
at ModalBuilder.toJSON (/workspaces/Dapper/node_modules/@discordjs/builders/src/interactions/modals/Modal.ts:82:32)
4 Replies
code for the modal?
const modal = new ModalBuilder()
.setTitle(`Editing ${user.username}'s profile`)
.setCustomId("edit_profile_modal");
const DapScoreInput = new TextInputBuilder()
.setCustomId("dap_score_input")
.setPlaceholder("DapScore")
.setValue(""+UserGuildData.userDap || "0")
.setMinLength(1)
.setStyle(TextInputStyle.Short);
const DapsGivenInput = new TextInputBuilder()
.setCustomId("daps_given_input")
.setPlaceholder("Daps Given")
.setValue(""+UserGuildData.dapsGiven || "0")
.setMinLength(1)
.setStyle(TextInputStyle.Short);
const DapsRecievedInput = new TextInputBuilder()
.setCustomId("daps_recieved_input")
.setPlaceholder("Daps Recieved")
.setValue(""+UserGuildData.dapsRecieved || "0")
.setMinLength(1)
.setStyle(TextInputStyle.Short);
const firstActionRow = new ActionRowBuilder().addComponents(
DapScoreInput
);
const secondActionRow = new ActionRowBuilder().addComponents(
DapsGivenInput
);
const thirdActionRow = new ActionRowBuilder().addComponents(
DapsRecievedInput
);
// @ts-ignore:code
modal.addComponents(firstActionRow, secondActionRow, thirdActionRow);
await interaction.showModal(modal);
const modal = new ModalBuilder()
.setTitle(`Editing ${user.username}'s profile`)
.setCustomId("edit_profile_modal");
const DapScoreInput = new TextInputBuilder()
.setCustomId("dap_score_input")
.setPlaceholder("DapScore")
.setValue(""+UserGuildData.userDap || "0")
.setMinLength(1)
.setStyle(TextInputStyle.Short);
const DapsGivenInput = new TextInputBuilder()
.setCustomId("daps_given_input")
.setPlaceholder("Daps Given")
.setValue(""+UserGuildData.dapsGiven || "0")
.setMinLength(1)
.setStyle(TextInputStyle.Short);
const DapsRecievedInput = new TextInputBuilder()
.setCustomId("daps_recieved_input")
.setPlaceholder("Daps Recieved")
.setValue(""+UserGuildData.dapsRecieved || "0")
.setMinLength(1)
.setStyle(TextInputStyle.Short);
const firstActionRow = new ActionRowBuilder().addComponents(
DapScoreInput
);
const secondActionRow = new ActionRowBuilder().addComponents(
DapsGivenInput
);
const thirdActionRow = new ActionRowBuilder().addComponents(
DapsRecievedInput
);
// @ts-ignore:code
modal.addComponents(firstActionRow, secondActionRow, thirdActionRow);
await interaction.showModal(modal);
maybe someone else who knows more can answer, i haven't actually used v13/14/modals but having the code will help. if you catch your error and log it, you can also post that when it pops up again, it should point to the line.
TextInputBuilders missing
.setLabel