feat: add announcement channels, publishing and following (#3090)

This commit is contained in:
Hampus authored and GitHub committed 2026-10-01 16:57:21 +02:00
1 parent 376afd2ad6
commit 7e4d5137f8
381 files changed
+45650 -14076

No files matched your search

@@ -168,7 +168,19 @@ export const ERROR_I18N_MESSAGES = {
'channels_and_guilds.all_channels_must_belong_to_guild': 'All channels must belong to this community.',
'channels_and_guilds.animated_guild_banner_requires_feature':
'Animated community banner requires ANIMATED_BANNER feature.',
'channels_and_guilds.announcement_channel_required': 'This action is only available in announcement channels.',
'channels_and_guilds.bots_cannot_create_guilds': "Bots can't create communities.",
'channels_and_guilds.channel_already_followed':
'This channel already receives updates from that announcement channel.',
'channels_and_guilds.channel_has_followed_channels':
'Remove the followed channels posting here before converting it to an announcement channel.',
'channels_and_guilds.channel_type_conversion_not_supported':
'Only text and announcement channels can be converted into each other.',
'channels_and_guilds.follow_target_content_warning_required':
'Updates from a channel with a content warning can only go to a channel with a content warning or an age restriction.',
'channels_and_guilds.follow_target_not_age_restricted':
'Updates from an age-restricted channel can only go to an age-restricted channel.',
'channels_and_guilds.invalid_follow_target_channel': 'Followed channels can only post into text channels.',
'channels_and_guilds.single_community_cannot_create_guilds':
'This instance is a single community, so additional communities cannot be created.',
'channels_and_guilds.single_community_cannot_delete': 'The community for this instance cannot be deleted.',
@@ -377,7 +389,9 @@ export const ERROR_I18N_MESSAGES = {
'messages.forward_reference_requires_channel_and_message':
'Forward message reference must include `channel_id` and `message_id`.',
'messages.invalid_message_data': 'Invalid message data.',
'messages.message_already_crossposted': 'This message has already been published.',
'messages.message_ids_cannot_be_empty': "`message_ids` can't be empty.",
'messages.message_not_crosspostable': 'This message cannot be published.',
'messages.messages_array_required': '`messages` array is required and must not be empty.',
'messages.messages_with_snapshots_cannot_be_edited': "Messages with snapshots can't be edited.",
'messages.voice_messages_attachment_must_be_audio': 'Voice message attachments must be audio files.',
@@ -485,9 +499,13 @@ export const ERROR_I18N_MESSAGES = {
"You've changed your bio too often recently. Please try again in {minutes, plural, one {# minute} other {# minutes}}.",
'rate_limits.ip_authorization_resend_cooldown': 'IP authorization resend is on cooldown.',
'rate_limits.ip_authorization_resend_limit_exceeded': 'IP authorization resend limit exceeded.',
'rate_limits.message_crosspost_rate_limited':
'This channel has reached its publishing limit. It can publish 10 messages in a row, then one more every 6 minutes.',
'rate_limits.phone_rate_limit_exceeded': 'Phone rate limit exceeded.',
'rate_limits.pronouns_changed_too_often':
"You've changed your pronouns too often recently. Please try again in {minutes, plural, one {# minute} other {# minutes}}.",
'rate_limits.published_message_edit_rate_limited':
'This published message has reached its editing limit. It allows 3 quick edits, then 1 every 20 minutes.',
'rate_limits.rate_limited': "You're being rate limited.",
'rate_limits.slowmode_rate_limited': 'Slowmode rate limited.',
'rate_limits.username_changed_too_often':