Fixes
https://linear.app/chatwoot/issue/CW-6950/support-bulk-actions-for-publish-archive-move-to-draft-delete-in
How to test
1. Go to Help Center → Articles
2. Select articles using checkboxes → bulk bar appears
3. Click Publish/Draft/Archive → articles update, list refreshes
4. Click Delete → confirmation dialog → articles removed
5. Click Translate (requires Captain enabled) → select locale + category
→ translation starts
6. Try translating to a locale that already has translations → warning
with links to existing articles → "Overwrite and translate" proceeds
8. Single article: click three-dot menu → Translate → same dialog opens
for that article
https://github.com/user-attachments/assets/7c76495e-f89e-4456-92bd-a6639a9992f4
---------
Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
Adds the ability to translate help center articles to other languages using Captain's LLM infrastructure. Translated articles are created as drafts linked to the source article.
Fixes
https://linear.app/chatwoot/issue/CW-6901/translate-article-to-another-language
**How to test**
1. Navigate to Help Center → Articles for a portal with multiple locales
2. Click the three-dot menu on any article → "Translate"
3. Select a target language and category → click Translate
4. Switch to the target locale — the translated article appears as a
draft
5. Try translating the same article again — a warning shows the existing
translation with a link to open it in a new tab
6. Click "Overwrite and translate" to replace the existing translation
https://github.com/user-attachments/assets/1d2e991b-f0ac-403a-bcc1-2181b5731ea4
* feat: sort by position
* chore: whitespace change
* feat: add border bottom color to list item
* feat: allow dragging articles
* feat: add migration to reorder all articles
* feat: add onsort method
* feat: finish UI sorting
* feat: show 50 per page in articles list
* feat: add article sorting methods
* feat: patch up reorder action with the API
* refactor: better naming
* chore: add comments
* feat: attach position to article before create
* feat: move article to end if moved between categories
* chore: add comments
* chore: update version
* fix: don't change position if previous category was nil
* fix: condition to trigger update on category change
* refactor: store new_position
* refactor: use grid instead of table
* feat: add snug spacing
* feat: add grab-icon
* feat: add grab icon to list
* refactor: show draggable only for category page
* feat: add update_positions as a class method
---------
Co-authored-by: Nithin David Thomas <[email protected]>
* Added one more endpoint to attach tempfile and get logo
* Added one more endpoint to attach tempfile and get logo
* spec fixes
* Upload file for articles irrespective of the association
* Upload file for articles irrespective of the association
* Add multiple images with different keys
* feat: Adds image attachment for help center articles
* Adds validation for file upload
* Fixes space above image after adding to doc
* chore: Removed svg from file upload type
* Update app/javascript/dashboard/components/widgets/WootWriter/FullEditor.vue
Co-authored-by: Shivam Mishra <[email protected]>
* Update app/javascript/dashboard/components/widgets/WootWriter/FullEditor.vue
Co-authored-by: Shivam Mishra <[email protected]>
* Removes caption for the image
* Fixes woot prosemirror package version
* Update yarn.lock
* Update yarn.lock
---------
Co-authored-by: Tejaswini Chile <[email protected]>
Co-authored-by: Sivin Varghese <[email protected]>
Co-authored-by: Muhsin Keloth <[email protected]>
Co-authored-by: iamsivin <[email protected]>
Co-authored-by: Shivam Mishra <[email protected]>
Co-authored-by: Pranav Raj S <[email protected]>
* Add more actions
* Complete sidebar store integration
* Complete portal list store integration
* Fixed the specs
* Added missing specs
* Add comment
* Code cleanup
* Fixed all the spec issues
* Add portal and article API specs
* Add category name in article list
* Add more locales
* Code beautification
* Exclude locale from codeclimate ci
* feat: Category store integration
* chore: Minor fixes
* chore: API call fixes
* chore: Minor fixes
* chore: Minor fixes
* chore: Adds the ability for get articles based on categories
* chore: minor fixes
* chore: Minor fixes
* chore: fixes specs and minor improvements
* chore: Review fixes
* chore: Minor fixes
* chore: Review fixes
* chore: Review fixes
* chore: Spacing fixes
* Code cleanup
Co-authored-by: Muhsin Keloth <[email protected]>