feat: initial prototype
Node.js CI / Lint and Test (push) Has been cancelled

This commit is contained in:
2025-02-23 19:45:53 -08:00
parent bbf71b077e
commit 3b5ceef191
25 changed files with 6276 additions and 14 deletions
+22
View File
@@ -0,0 +1,22 @@
/**
* @copyright nhcarrigan
* @license Naomi's Public License
* @author Naomi Carrigan
*/
import {
ApplicationIntegrationType,
SlashCommandBuilder,
InteractionContextType,
} from "discord.js";
const command = new SlashCommandBuilder().
setContexts(
InteractionContextType.Guild,
).
setIntegrationTypes(ApplicationIntegrationType.GuildInstall).
setName("about").
setDescription("Learn more about this bot!");
// eslint-disable-next-line no-console -- We don't need our logger here as this never runs in production.
console.log(JSON.stringify(command.toJSON()));
+27
View File
@@ -0,0 +1,27 @@
/**
* @copyright nhcarrigan
* @license Naomi's Public License
* @author Naomi Carrigan
*/
import {
ApplicationIntegrationType,
SlashCommandBuilder,
InteractionContextType,
} from "discord.js";
const command = new SlashCommandBuilder().
setContexts(
InteractionContextType.Guild,
).
setIntegrationTypes(ApplicationIntegrationType.GuildInstall).
setName("role").
setDescription("Set the support role that is added to each ticket.").
addRoleOption((option) => {
return option.setName("role").
setDescription("The role that should be invited to each thread.").
setRequired(true);
});
// eslint-disable-next-line no-console -- We don't need our logger here as this never runs in production.
console.log(JSON.stringify(command.toJSON()));
+29
View File
@@ -0,0 +1,29 @@
/**
* @copyright nhcarrigan
* @license Naomi's Public License
* @author Naomi Carrigan
*/
import {
ApplicationIntegrationType,
SlashCommandBuilder,
InteractionContextType,
ChannelType,
} from "discord.js";
const command = new SlashCommandBuilder().
setContexts(
InteractionContextType.Guild,
).
setIntegrationTypes(ApplicationIntegrationType.GuildInstall).
setName("start").
setDescription("Send the ticket start post in the specified channel.").
addChannelOption((option) => {
return option.setName("channel").
setDescription("The channel to send the ticket start post in.").
setRequired(true).
addChannelTypes(ChannelType.GuildText);
});
// eslint-disable-next-line no-console -- We don't need our logger here as this never runs in production.
console.log(JSON.stringify(command.toJSON()));