Implement PlaceholderHelp component across various forms for enhanced user guidance

- Integrated PlaceholderHelp component into multiple forms including WelcomeForm, TagsManager, and StatsForm to provide contextual hints for available placeholders.
- Updated DiscordEmbedBuilder to support placeholder presets, improving user experience when creating embeds.
- Enhanced localization files to include new placeholder descriptions, ensuring clarity in both English and German.
- Refactored related components to maintain consistency in placeholder handling across the application.
This commit is contained in:
TheOnlyMace
2026-07-22 22:07:08 +02:00
parent 55a4f7bf09
commit 8cfb149a18
21 changed files with 583 additions and 98 deletions

View File

@@ -35,6 +35,33 @@
"clear": "Clear embed",
"clearHint": "Empty fields do not save an embed."
},
"placeholders": {
"toggle": "Show available placeholders",
"hint": "Tap copy to insert. Only the placeholders listed here work in this field.",
"copy": "Copy placeholder",
"copied": "Placeholder copied",
"copyFailed": "Could not copy",
"desc": {
"userMention": "Mention of the member",
"userName": "Member display name",
"userTag": "Member username/tag",
"userId": "Member Discord ID",
"userDisplayName": "Display name (no mention)",
"userTagPlain": "Username without mention",
"username": "Member display name",
"server": "Server name",
"memberCount": "Current member count",
"args": "Arguments after the tag command",
"random": "Random choice from options (separated by |)",
"age": "Age in years (only if birth year is set)",
"level": "Reached level",
"count": "Current stats value",
"feedTitle": "Feed item title",
"feedUrl": "Feed item URL",
"channelBracket": "Channel mention (dashboard syntax — replace the ID)",
"channelNative": "Channel mention (Discord syntax — replace the ID)"
}
},
"nav": {
"dashboard": "Dashboard",
"overview": "Overview",
@@ -268,11 +295,45 @@
"retentionLabel": "Retention (days)",
"retentionHint": "Delete cases and dashboard audit older than X days. 0 = keep forever.",
"channelsTitle": "Event-channel mapping",
"channelsDescription": "Assign a dedicated log channel for each event type.",
"channelsDescription": "Pick a log channel and assign one or more event types to it.",
"channelsEmpty": "No event-channel mappings configured.",
"channelsHint": "Each event type can only map to one channel. Selecting it here removes it from other rows.",
"eventType": "Event type",
"channelId": "Channel ID",
"addMapping": "Add mapping"
"eventTypesLabel": "Event types",
"eventTypesPlaceholder": "Search event types…",
"channelId": "Log channel",
"addMapping": "Add mapping",
"errors": {
"duplicateEventType": "An event type is assigned more than once. Please check your selection."
},
"eventTypes": {
"MESSAGE_EDIT": "Message edited",
"MESSAGE_DELETE": "Message deleted",
"MESSAGE_BULK_DELETE": "Messages bulk deleted",
"MEMBER_JOIN": "Member joined",
"MEMBER_LEAVE": "Member left",
"MEMBER_BAN": "Member banned",
"MEMBER_UNBAN": "Member unbanned",
"MEMBER_UPDATE": "Member updated",
"CHANNEL_CREATE": "Channel created",
"CHANNEL_DELETE": "Channel deleted",
"CHANNEL_UPDATE": "Channel updated",
"VOICE_JOIN": "Voice joined",
"VOICE_LEAVE": "Voice left",
"VOICE_MOVE": "Voice moved",
"INVITE_CREATE": "Invite created",
"EMOJI_CREATE": "Emoji created",
"EMOJI_UPDATE": "Emoji updated",
"EMOJI_DELETE": "Emoji deleted",
"STICKER_CREATE": "Sticker created",
"STICKER_UPDATE": "Sticker updated",
"STICKER_DELETE": "Sticker deleted",
"THREAD_CREATE": "Thread created",
"THREAD_UPDATE": "Thread updated",
"THREAD_DELETE": "Thread deleted",
"GUILD_UPDATE": "Server updated",
"MOD_ACTION": "Moderation action"
}
},
"welcome": {
"welcomeTitle": "Welcome",
@@ -287,7 +348,7 @@
},
"welcomeContent": "Message content",
"contentPlaceholder": "Welcome {user} to {server}!",
"placeholdersHint": "Available placeholders: {user}, {user.name}, {user.tag}, {user.id}, {server}, {memberCount}",
"placeholdersHint": "Available placeholders: see the list below.",
"welcomeEmbed": "Embed",
"welcomeDmEnabled": "Welcome DM enabled",
"dmContentPlaceholder": "Optional private message to new members",