iachat/app/controllers/api/v1/accounts
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 feat: Reverse the contact merge (#8057) 2023-10-10 08:20:48 +05:30
channels chore: Fix twilio inbox create transaction rollback (#9181) 2024-04-02 15:04:10 +05:30
contacts feat: Order previous conversations by last activity (#10825) 2025-02-05 19:50:25 -08:00
conversations chore: Fix issue with deleting interactive messages (#10123) 2024-09-16 21:05:39 -07:00
google feat: add Google login flow and inbox creation (#9580) 2024-06-07 16:37:46 +05:30
integrations feat(ee): Add Captain features (#10665) 2025-01-14 16:15:47 -08:00
microsoft feat: add Google login flow and inbox creation (#9580) 2024-06-07 16:37:46 +05:30
twitter fix: Twitter inbox creation error (#1783) 2021-02-16 19:35:10 +05:30
agent_bots_controller.rb chore: Adds API for agent bot avatar upload (#8533) 2023-12-11 19:02:11 -08:00
agents_controller.rb feat: Add APIs to manage custom roles in Chatwoot (#9995) 2024-08-23 17:18:28 +05:30
articles_controller.rb feat(v4): Update the help center portal design (#10296) 2024-10-23 22:09:36 -07:00
assignable_agents_controller.rb chore: Add Assignable Agents API (#4722) 2022-05-23 19:24:07 +05:30
automation_rules_controller.rb feat: common attachment endpoint follow-up changes (#7826) 2023-09-01 15:18:48 +07:00
base_controller.rb Feat: authenticate direct upload (#4160) 2022-03-16 13:54:18 +05:30
bulk_actions_controller.rb feat: Add support for bulk snooze until (#9360) 2024-05-08 08:55:31 +05:30
callbacks_controller.rb refactor: improve logging for channel callback controllers (#7555) 2023-07-27 17:10:39 +05:30
campaigns_controller.rb chore: Enable the new Rubocop rules (#7122) 2023-05-19 14:37:10 +05:30
canned_responses_controller.rb fix: order for canned response (#6400) 2023-02-06 12:53:48 -08:00
categories_controller.rb feat: Adds the ability to set an emoji for help center category (#8111) 2023-10-20 13:52:30 +05:30
contact_inboxes_controller.rb chore: Add an API to find the contacts using contact inbox sourceId (#8012) 2023-09-28 15:26:28 -07:00
contacts_controller.rb feat: validate query conditions (#10595) 2024-12-17 17:16:37 +05:30
conversations_controller.rb feat: validate query conditions (#10595) 2024-12-17 17:16:37 +05:30
csat_survey_responses_controller.rb feat: more CSAT filters (#7038) 2023-05-18 22:50:46 +05:30
custom_attribute_definitions_controller.rb feat: Support Regex validation for custom attributes (#7856) 2024-01-23 18:01:57 +04:00
custom_filters_controller.rb fix: set custom filter count in redis (#7164) 2023-06-19 16:10:03 +05:30
dashboard_apps_controller.rb feat: Allow users to create dashboard apps to give agents more context (#4761) 2022-06-01 11:13:10 +05:30
inbox_members_controller.rb feat: invalidate cache after inbox members or team members update (#10869) 2025-02-20 21:28:38 -08:00
inboxes_controller.rb feat: Ability to customise the email sender name [CW-1629] (#7345) 2023-07-04 20:46:01 +05:30
labels_controller.rb chore: Use "destroy!" instead of "destroy" when not checking the return value (#4259) 2022-03-24 13:28:25 +05:30
macros_controller.rb feat: common attachment endpoint follow-up changes (#7826) 2023-09-01 15:18:48 +07:00
notification_settings_controller.rb Chore: Code Cleanup in API controllers (#932) 2020-06-07 13:58:05 +05:30
notifications_controller.rb feat: Update last_snoozed_at after the un-snooze notification (#8943) 2024-02-20 18:55:39 +05:30
portals_controller.rb feat(v4): Update the help center portal design (#10296) 2024-10-23 22:09:36 -07:00
search_controller.rb feat: New APIs for search (#6564) 2023-02-28 22:00:36 +05:30
team_members_controller.rb feat: invalidate cache after inbox members or team members update (#10869) 2025-02-20 21:28:38 -08:00
teams_controller.rb chore: Use "destroy!" instead of "destroy" when not checking the return value (#4259) 2022-03-24 13:28:25 +05:30
upload_controller.rb feat: Extend upload API end point to support external images (#10062) 2024-09-05 10:42:54 +05:30
webhooks_controller.rb feat: Add event subscription option to webhooks (#4540) 2022-04-25 17:44:42 +05:30
working_hours_controller.rb feat: Business hours 2020-11-01 00:14:33 +05:30