* remove enabling apps plugin by default
* use client config to determine creating app bindings.
* update the way dispatch is made
* updated type setting
* fixed unit test
* prevent a nil check
* dispatch batch
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* removed an incorretc return that caused missing API timing metrics for 4xx and 5xx errors
* Added tests and recorded metric for URL length limit as well
* Status code fix
* [MM-58563] Load profiles on sidebar load irrespective of the current channel
* Remove await
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
1. Rewrite of loadConfigAndMe function which includes compatible return types along with less blocking redux actions
2. Actions of webapp/channels/src/components/root/actions.ts moved to webapp/channels/src/actions/views/root.ts for consistency
3. Removes 2 redundant network requests for config and license.
* Change: Convert class component to functional component in boolean_setting
Change: Update test snapshots in settings tests where boolean_setting is used
* Change: Use useMemo instead of useState and useEffect to prevent constant re-rendering
* Change: Use useCallback to cache the handleChange function
* Change: Add onChange to useCallback dependencies
* converted migrations_table class component to functional component
* added dependencylist for useffect & use memo for caching
* Added tests
* Remove commented code and used renderWithContext instead of render(withIntl(..))
---------
Co-authored-by: Ezekiel <ezekiel@itsmart.my>
Co-authored-by: Mattermost Build <build@mattermost.com>
* refactor(component): convert TextDismissableBar from class to function component
* perf:Code optimized
* refactor(component):props vertically formatted, getDismissed function moved outside
* Update webapp/channels/src/components/announcement_bar/text_dismissable_bar.tsx
Co-authored-by: Daniel Espino García <larkox@gmail.com>
* refactor:setDismissed formatted vertically
* test(text_dismissable_bar):snapshot test updated
* refactor: remove type from shallow rendering in TextDismissableBar test
---------
Co-authored-by: Daniel Espino García <larkox@gmail.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
* fix: convert component to function component
* fix: use 'useIntl' to replace deprecated 'localizeMessage' and fix indendation of props value
* fix: fix lint in 'toggele_mute_channel' file
* fix: include 'isMuted', 'user.id', and 'channel.id' to 'handleClick' callback dependency
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* [MM-58567] Added `window.isActive` check for marking threads as active when they're open, mark the threads as read when the window becomes active again
* PR feedback
* Rename Office 365 to Entra ID
* Another text update
* More lingering texts
* More text updates
* Updated link
* Linting
* Override office365 service name in admin user details view
* linting
* Updated help text
* Fix bad merge
* Linting
* Removed one leftover occurance of Office 365
* Typo and log in link fix
* Typo fix
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
We were invalidating the userProfileByIds cache unnecessarily
when it wasn't really needed. It's just that the InvalidateCacheForUser
method wiped off all user related caches, when we just needed to wipe
user-channel related caches.
To fix this, we split the user cache invalidation method into two
and just call the InvalidateChannelCacheForUser method from app/channel.go.
https://mattermost.atlassian.net/browse/MM-59827
```release-note
NONE
```