mirror of
https://github.com/lingble/chatwoot.git
synced 2025-11-08 15:03:14 +00:00
feat: Add manual WhatsApp templates sync with UI (#12007)
Fixes https://github.com/chatwoot/chatwoot/issues/9600 **Summary** - Added manual WhatsApp templates sync functionality accessible via UI - Added refresh button in both inbox settings and template picker modal - Enhanced template picker to always show for WhatsApp Cloud channels (even when empty) **Preview** <img width="1456" height="798" alt="CleanShot 2025-07-22 at 14 15 28@2x" src="https://github.com/user-attachments/assets/8a04ff26-61fa-42ee-a1b8-5e06433ae6e0" /> <img width="2376" height="1574" alt="CleanShot 2025-07-22 at 14 19 24@2x" src="https://github.com/user-attachments/assets/1c772034-04ff-484d-88dd-ca8123e93065" /> --------- Co-authored-by: iamsivin <iamsivin@gmail.com>
This commit is contained in:
@@ -231,4 +231,28 @@ describe('#actions', () => {
|
||||
).rejects.toThrow(Error);
|
||||
});
|
||||
});
|
||||
|
||||
describe('#syncTemplates', () => {
|
||||
it('sends correct API call when sync is successful', async () => {
|
||||
axios.post.mockResolvedValue({
|
||||
data: { message: 'Template sync initiated successfully' },
|
||||
});
|
||||
|
||||
await actions.syncTemplates({ commit }, 123);
|
||||
|
||||
expect(axios.post).toHaveBeenCalledWith(
|
||||
'/api/v1/inboxes/123/sync_templates'
|
||||
);
|
||||
});
|
||||
|
||||
it('throws error when API call fails', async () => {
|
||||
const errorMessage =
|
||||
'Template sync is only available for WhatsApp channels';
|
||||
axios.post.mockRejectedValue(new Error(errorMessage));
|
||||
|
||||
await expect(actions.syncTemplates({ commit }, 123)).rejects.toThrow(
|
||||
errorMessage
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user