* MM-16258: Adds new API endpoint + (App & Client & Store) to retrieve Users who would be removed from a list of hypothetical group IDs representing the synced groups.
* MM-16258: Adds roles to JSON response.
* MM-16258: Updates GetByIDs to use Squirrel.
* MM-16258: Puts as much as possible into Squirrel.
* MM-16258: Changes names of methods, functions, and route.
* MM-16258: Updates some comments.
* MM-16258: Extra validation of group_ids parameter.
* MM-16258: Changes validation of group_ids query param.
* MM-16258: Rename a variable and a constant.
* MM-16258: Fix test.
* GH-11085 Migrate Team.GetAllTeamPageListing to Sync by default
* GH-11085 review fixes
* GH-11085 rename data to teams
* GH-11085 revert i18n changes
* Change the functions that are used only by `notification.go` from public
to private
* Split getExplicitMentions() into smaller functions.
- addMentionedUsers
- checkForMention
- isKeywordMultibyte
- processText
along with their tests.
* Merge with master
Fix wording on isKeywordMultibyte() function comment
* Team.UpdateMember is sync by default
* Fix go vet: declaration of err shadows declaration at line 261
* Fix shadowing variables
* fix undefined err
* fix shadowing variables
* Migrate Team.GetActiveMembersCount to Sync by default
* Requested change
* Requested change
* Fix merge
* Added a new key to i18n: store.sql_team.get_active_member_count.app_error
* [MM-16173] Migrate Team.AnalyticsTeamCount to Sync by default #11126
+ Modified team_store.AnalyticsTeamCount to return (int64, *model.AppError) instead of store.StoreChannel.
+ Updated the mock store to reflect new return value.
+ Updated referencing code to handle new sync return value.
* Fix shadowing of the err
* Fix the empty line between related code
* Fix team count call to be an explicit async.
* Added error logging to diagnostics.go
* Fix gofmt in file
* Migrate "Post.GetPostsSince" to Sync by default #10976
* Update GetPostsSince to Sync by default #10976
* Update GetPostsSince to Sync by default #10976
* Update GetPostsSince to Sync by default #10976
* MM-15841: migrate post save to sync by default #10987
* MM-15841: remove variable shadowing #10987
* MM-15841: log error on post save #10987
* MM-15841: nil check post save errors #10987
* MM-15841: update error message on post save #10987
* MM-15841: add nil check on post save in user store test #10987
* [MM-15797] Migrate Session.Remove to Sync by default
* Remove unnecessary channel logic and simplify
* Refactor code to be more consistent with code base
* Rename variable to avoid shadow declaration
* Add missing checks in tests
* Regenerate the mocks
* Run gofmt over code
+ GetTotalMemberCount returns (int64, *model.AppError) now instead of StoreChannel.
+ Updated store mock.
+ Updated code that referenced GetTotalMemberCount to handle the sync result.
* Truncate strings from OpenGraph metada
* remove unwanted opengraph fields, limit to 1 image
* test helper functions
* Add truncating test
* fix typo
* change test into not comparing for the pointer value
* truncate only once
* only shorten fields that were already present
* set maximum of 5 images
* fix original tests
* fix test
* limit to 5 images
* fix typo
* place functions below types, simplify function commentaries
* Rewrite how to empty opengraph's structure
* MM-15302: Migrate `Preference.Delete` to Sync by default #10715
* MM-15302: Migrate `Preference.Delete` to Sync by default #10715
* regenerate store mocks
* fix shadow var
* [MM-16005] Check listOfAllowedChannels to be a not nil empty slice
The problem here had to do with the return type for a `nil`
`[]string`. If `listOfAllowedChannels` is an empty list, that means
that the user doesn't have permissions to view anything, hence we have
to return an empty result. If it is `nil`, there are no restrictions
and we can proceed.
`[]string(nil)` behaves both as a `nil` value and as an "empty" slice,
so this improves the check to be able to distinguish between both
cases.
* Add documentation to the GetViewUsersRestrictionsForTeam function
Adds an exported const string that can be used by plugins to signal a client that the incoming post should be dismissed, instead of the current behavior which just leaves it pending.
* add support for slack corporate export data
* changed tempChannels for channel types. concat after parsing channels
* fix typo
* add fixes suggested by @lieut-data