const { SlashCommandBuilder } = require('discord.js'); var abbreviationKey = require("../abbreviation_key.json"); const fs = require('node:fs'); var path = require('node:path'); //console.log(abbreviationKey); module.exports = { data: new SlashCommandBuilder() .setName("add_phrase") .setDescription("adds abbreviation to respond to") .addStringOption( (option) => option.setName("abbreviation") .setDescription("The abbreviation to target") .setRequired(true) ) .addStringOption( option => option.setName('phrase') .setDescription("The phrase that the abbreviation shortens") .setRequired(true) ), async execute(interaction, client) { var abbreviation = interaction.options.getString('abbreviation').toLowerCase(); var phrase = interaction.options.getString('phrase'); await interaction.reply('Adding abbreviation `' + abbreviation + "` to target list. This will complete to the phrase `" + phrase + "`"); addPhrase(abbreviation, phrase); }, }; function addPhrase(abbrevation, phrase) { console.log(abbrevation, phrase); abbreviationKey.target_phrases[abbrevation] = phrase; console.log(abbreviationKey); // Write data to file var jsonString = JSON.stringify(abbreviationKey); try { //console.log(fs.existsSync("../abbreviation_key.json")); var jsonPath = path.join(__dirname, '..', 'abbreviation_key.json'); fs.unlinkSync(jsonPath); fs.writeFileSync(jsonPath, jsonString, { encoding: 'utf8' }, "\t"); console.log("Added Phrase to list. JSON now contains:" + abbreviationKey); } catch (err) { console.error(err); } }