Release v01.05.00: Instagram, YouTube, Share Content, delete, templates, competitive roadmap #166
Reference in New Issue
Block a user
Delete Branch "dev"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Major feature release with 9 closed issues, 2 new platform plugins, and significant platform enhancements.
New Plugins
New Features
Bug Fixes (re-applied after rebase loss)
Housekeeping
Issues Closed
Closes #130, #131, #140, #141, #142, #152, #154, #155, #158
Test Plan
New article editor fieldset 'Share Content' with fields: - Social Media Text ({social}) - Facebook, LinkedIn, Threads, Mastodon - Short Text ({short}) - Twitter/X (280), Bluesky (300) - Chat Text ({chat}) - Telegram, Discord, Slack, Teams - Email Subject ({email_subject}) + Email Body ({email_body}) - Mailchimp, SendGrid, Brevo - Share Image picker (intro/fulltext/custom/none) All placeholders fall back gracefully to introtext/title if empty. Default templates updated to use platform-specific placeholders.- Add template_id and template_section config fields - When template_id set, inject content into Mailchimp template sections - When empty, wrap HTML in responsive email skeleton (600px table layout) - Fix broken ${CLASS_NAME} namespace placeholder in mailchimp.xml - New language strings for template fieldset Closes #142New MokoSuiteCrossDeleteInterface (separate from main interface to avoid breaking all 38 plugins). Plugins that support deletion implement both. deletePost() implemented for 7 platforms: - Twitter: DELETE /2/tweets/{id} with OAuth 1.0a - Mastodon: DELETE /api/v1/statuses/{id} - Bluesky: com.atproto.repo.deleteRecord - Facebook: DELETE /{post_id} via Graph API - LinkedIn: DELETE /v2/ugcPosts/{urn} - Telegram: POST /deleteMessage - Discord: DELETE webhook /messages/{id} Infrastructure: - CrossPostDispatcher::deleteFromPlatforms() finds posted entries and calls deletePost() on plugins that implement the delete interface - Content plugin hooks onContentChangeState for unpublish/trash - New component config: 'Delete from Platforms on Unpublish' - Post status 'deleted' added to schema Closes #131