diff --git a/src/commands/supported-languages.ts b/src/commands/supported-languages.ts index b5ab36a..81e4bc9 100644 --- a/src/commands/supported-languages.ts +++ b/src/commands/supported-languages.ts @@ -1,24 +1,54 @@ import { SlashCommandBuilder } from '@discordjs/builders'; import dedent from 'dedent'; -import { type APIApplicationCommandInteraction, InteractionResponseType } from 'discord-api-types/v10'; +import { + type APIApplicationCommandInteraction, + ComponentType, + InteractionResponseType, + MessageFlags, +} from 'discord-api-types/v10'; import { reply } from '../reply.ts'; export async function onSupportedLanguagesSlashCommand(_interaction: APIApplicationCommandInteraction) { return reply(InteractionResponseType.ChannelMessageWithSource, { - content: dedent` - ### ✅ Full Support - JavaScript, TypeScript, JSX, JSON, JSONC, CSS, GraphQL - ### ⚠️ Partial Support - [Astro, Vue, Svelte]() (Embedded JS only), GritQL - ### ⏳ Working on it! - HTML, [YAML]()\*, Markdown - ### ❓ Not yet - Astro, Vue, Svelte (Full language support) - - \*Community contribution - - For more info check - `, + flags: MessageFlags.IsComponentsV2, + components: [ + { + type: ComponentType.TextDisplay, + content: dedent` + ### ✅ Full Support + JavaScript, TypeScript, JSX, JSON, HTML, JSONC, CSS, GraphQL, GritQL + `, + }, + { + type: ComponentType.Separator, + }, + { + type: ComponentType.TextDisplay, + content: dedent` + ### 🟡 Experimental + [Vue, Svelte, Astro]() + `, + }, + { + type: ComponentType.Separator, + }, + { + type: ComponentType.TextDisplay, + content: dedent` + ### ⏳ Working on it! + [YAML](), [Markdown]() + `, + }, + { + type: ComponentType.Separator, + }, + { + type: ComponentType.TextDisplay, + content: dedent` + *For more info check out * + `, + }, + ], }); }