iachat/spec
Shivam Mishra c88447c11f
feat: invalidate cache after inbox members or team members update (#10869)
At the moment, when updating the inbox members, or team members the
account cache used for IndexedDB is not invalidated. This can cause
inconsistencies in the UI. This PR fixes this by adding explicit
invalidation after performing the member changes

### Summary of changes

1. Added a new method `add_members` and `remove_members` to both `team`
and `inbox` models. The change was necessary for two reasons
- Since the individual `add_member` and `remove_member` is called in a
loop, it's wasteful to run the cache invalidation in the method.
- Moving the account cache invalidation call in the controller pollutes
the controller business logic
2. Updated tests across the board

### More improvements

We can make a concern called `Memberable` with usage like
`memberable_with :inbox_members`, that can encapsulate the functionality

---

Related: https://github.com/chatwoot/chatwoot/issues/10578
2025-02-20 21:28:38 -08:00
..
actions fix: Migrate notes when merging the contacts (#8749) 2024-01-20 10:32:18 +04:00
assets chore: Contact import improvements (#7787) 2023-08-23 23:24:47 -07:00
builders fix: Exclude notifications for blocked contacts, except mentions (#10659) 2025-01-12 15:30:27 +05:30
channels chore: Enable the new Rubocop rules (#7122) 2023-05-19 14:37:10 +05:30
configs chore: Enable the new Rubocop rules (#7122) 2023-05-19 14:37:10 +05:30
controllers feat: invalidate cache after inbox members or team members update (#10869) 2025-02-20 21:28:38 -08:00
dispatchers Non blocking event dispatch (#652) 2020-03-29 19:18:30 +05:30
drops feat: Add the support for custom attributes in message variables (#8511) 2023-12-08 14:13:35 -08:00
enterprise chore: Update the behavior of Captain resolutions (#10794) 2025-02-03 16:25:08 +05:30
factories chore: Update the behavior of Captain resolutions (#10794) 2025-02-03 16:25:08 +05:30
finders fix: Inbox view Read/Snoozed display filters (#8907) 2024-02-17 13:59:25 +05:30
fixtures fix: Email attachments created with empty filename (#10420) 2024-11-15 09:07:24 +04:00
helpers chore: Remove the background SVG from the help center (#10857) 2025-02-11 18:58:36 +05:30
integration Fix url in emails, add frontendURL helper (#19) 2019-08-25 19:59:28 +05:30
jobs fix: RemoveStaleRedisKeys service (#10562) 2024-12-11 03:38:25 +08:00
lib feat: Upgrade Dyte apis to v2 (#10706) 2025-02-19 14:47:48 -08:00
listeners fix: Prevent duplicate notifications for mentions (#10675) 2025-01-13 11:20:31 +05:30
mailboxes chore: Disable throwing error for malformed to address (#10464) 2024-11-20 18:58:54 -08:00
mailers feat: add Google Email fetch and OAuth token refresh service (#9603) 2024-06-11 14:22:03 +05:30
models feat: invalidate cache after inbox members or team members update (#10869) 2025-02-20 21:28:38 -08:00
policies Feature: Ability to switch between multiple accounts (#881) 2020-05-26 22:38:48 +05:30
presenters chore: Update the precision of the updated_at timestamp in conversation model (#10875) 2025-02-10 20:22:11 -08:00
requests/api/v1 feat: Update the slack integration-flow to allow users to select the channel (#7637) 2023-07-28 14:50:30 -07:00
services feat: Adds support for telegram contact sharing (#10841) 2025-02-06 14:23:08 +05:30
support feat: Slack link unfurling (#7940) 2023-09-29 19:35:56 +05:30
workers fix: Capture delivery errors to avoid false positives (#8790) 2024-01-26 14:22:18 +04:00
rails_helper.rb feat: locking and retry in FB message parsing (#7701) 2023-08-23 09:48:17 +07:00
spec_helper.rb feat(ee): Add Captain features (#10665) 2025-01-14 16:15:47 -08:00
test_helper.rb Chore: Setup test coverage in codeclimate [#332] (#333) 2019-12-02 08:57:11 +05:30