Commit Graph

1339 Commits

Author SHA1 Message Date
Cédric Stocké
403c9cf435 Translated using Weblate (Italian)
Currently translated at 100.0% (995 of 995 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/it/
2023-02-14 10:38:37 +02:00
Matthew Williams
8174894e15 Translated using Weblate (English (Australia))
Currently translated at 100.0% (995 of 995 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/en_AU/
2023-02-14 10:38:37 +02:00
Tom De Moor
a17a18327f Translated using Weblate (Dutch)
Currently translated at 100.0% (995 of 995 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/nl/
2023-02-14 10:38:37 +02:00
master7
8622eddd6a Translated using Weblate (Polish)
Currently translated at 100.0% (995 of 995 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/pl/
2023-02-14 10:38:37 +02:00
jprusch
2736cbe0d4 Translated using Weblate (German)
Currently translated at 100.0% (995 of 995 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/de/
2023-02-14 10:38:37 +02:00
Cédric Stocké
9103b815c0 Translated using Weblate (Italian)
Currently translated at 24.3% (241 of 989 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/it/
2023-02-14 10:38:37 +02:00
Christopher Poile
4cb20a4bec MM-49065 - Calls: Implement glare free negotiation (#7111)
* glare-free negotiation

* update to latest with fix

* remove unneeded sessionConstraints

* update to latest react-native-webrtc
2023-02-13 11:03:49 -05:00
Christopher Poile
35c98e673a MM-50415 - Fix addIceCandidate error due to potential race (#7104) 2023-02-09 10:36:22 -05:00
Joseph Baylon
2b1e9852f4 Update jira number for known issue 2023-02-09 09:40:32 +01:00
Joseph Baylon
32fbc01d03 Misc fixes for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
53b834d702 Fix edit_profile.e2e 2023-02-09 09:40:32 +01:00
Joseph Baylon
a59d966ce4 Fix search messages e2e for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
3566a4e8ce Fix smoke test e2e for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
f3c578c7ae Fix threads e2e for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
ee477c16fa Fix server login e2e for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
3538205f81 Fix search e2e for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
2ebfa0230e Fix messaging e2e for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
658b35b6ad Fix channels e2e for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
e8ad89861d Fix account e2e for android 2023-02-09 09:40:32 +01:00
Joseph Baylon
21ae37353e Add testID for radio item option 2023-02-09 09:40:32 +01:00
Joseph Baylon
bda9b10d7d Revert react reload inside beforeAll 2023-02-09 09:40:32 +01:00
Joseph Baylon
94b5bc65e7 Detox Maintenance: Fix failing android e2e 2023-02-09 09:40:32 +01:00
Elias Nahum
6c3027c06e Bump app build number to 456 (#7102) 2023-02-08 17:02:55 +02:00
Elias Nahum
cb717aba0c Android fix (#7099)
* Fix android notifications permission

* fix unsigned android build
2023-02-08 16:55:04 +02:00
Christopher Poile
03fe46f229 MM-48605: Calls - Fix for start time in join call banner is incorrect (#7095)
* "fix" the wrong start time

* cleanup unused field
2023-02-08 09:25:41 -05:00
Shivashis Padhi
7158de8d5e Merge pull request #7086 from mattermost/MM-49868_revert_mentions_of_free_oauth
MM-49868: Remove mentions of Free OAuth in OpenID-Connect section
2023-02-07 20:23:53 +05:30
Elias Nahum
f37a9fbabb Replace package and imports for Kotlin files (#7090) 2023-02-07 11:34:49 +02:00
jprusch
2dc2bfcd3a Translated using Weblate (German)
Currently translated at 100.0% (989 of 989 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/de/
2023-02-07 11:15:09 +02:00
master7
809a2d8e2c Translated using Weblate (Polish)
Currently translated at 100.0% (989 of 989 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/pl/
2023-02-07 11:15:09 +02:00
Kaya Zeren
7c611f9854 Translated using Weblate (Turkish)
Currently translated at 100.0% (989 of 989 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/tr/
2023-02-07 11:15:09 +02:00
MArtin Johnson
336f6bab91 Translated using Weblate (Swedish)
Currently translated at 100.0% (989 of 989 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/sv/
2023-02-07 11:15:09 +02:00
Sajjad Jazini
63686f4fac Translated using Weblate (Persian)
Currently translated at 85.1% (842 of 989 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/fa/
2023-02-07 11:15:09 +02:00
Tom De Moor
ed28bd8733 Translated using Weblate (Dutch)
Currently translated at 100.0% (989 of 989 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/nl/
2023-02-07 11:15:09 +02:00
MArtin Johnson
e78f67509d Translated using Weblate (Swedish)
Currently translated at 100.0% (974 of 974 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/sv/
2023-02-07 11:15:09 +02:00
master7
74aa4bb04e Translated using Weblate (Polish)
Currently translated at 100.0% (974 of 974 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/pl/
2023-02-07 11:15:09 +02:00
Tom De Moor
4e7bf17dcc Translated using Weblate (Dutch)
Currently translated at 100.0% (974 of 974 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/nl/
2023-02-07 11:15:09 +02:00
Sajjad Jazini
17046ab261 Translated using Weblate (Persian)
Currently translated at 86.2% (840 of 974 strings)

Translation: mattermost-languages-shipped/mattermost-mobile-v2
Translate-URL: https://translate.mattermost.com/projects/mattermost/mattermost-mobile-v2/fa/
2023-02-07 11:15:09 +02:00
Elias Nahum
c83f53abd9 Add set_app_version_build to Fastlane (#7089) 2023-02-07 10:59:03 +02:00
Claudio Costa
ab50164d34 [MM-49996] Add /call recording slash command (#7062)
* Add  slash command

* Fix alert

* Implement alert for recording errors

* Default locked
2023-02-06 21:14:22 -06:00
Shivashis Padhi
08b1dc4ea8 Remove mention of FreeOAuth 2023-02-06 16:02:47 +05:30
Elias Nahum
e9b6124479 Bump app build number to 455 (#7085) 2023-02-03 17:25:42 +02:00
Daniel Espino García
980c31f40f Remove watermelondb limitation on updating an already updated model (#7067)
* Remove watermelondb limitation on updating an already updated model

* Add logic to handle different prepare states and improve logging

* fix tests

---------

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2023-02-03 17:11:57 +02:00
Amy Blais
449c5edac9 Update ISSUE_TEMPLATE.md (#7080) 2023-02-03 08:55:40 -05:00
Anurag Shivarathri
fab5665773 Fix (#7082) 2023-02-03 15:08:51 +05:30
Jason Frerich
218f98e3e0 [Gekidou - MM-47653] Implement Manage Members Screen (#6771)
* move user_list to component

* start the modal from create_direct_message

* initial commit

* Add managing options to user profile

* s/showManage/showManageMode/

* simplify

* use helper functions

* add dependency

* fix togglling manage/done button

* remove close button in navbar

* remove close button. The only exit from this screen is the back button

* utilize LeaveChannelLabel component actions

* nit

* nit

* slight refactor

* return earlier if not showManageMode

* use defineMessages

* don't modify leave channel component

* add manage_members_label component

* rename variables to imply manage actions

* remove user from channel on server and locally in channel membership

* prevent managing yourself. In V1, this is done by not allowing you to
select yourself for channel removal

* remove useReducer

* - fix typography
- fix icon size
- don't allow tapping on yourself in manage mode

* sort props

* sort props

* sort props

* - combine try blocks
- use getServerDatabaseAndOperator function to get the operator

* fetchChannelStats after removing users from a channel

* currently, the UI does not provide a need to remove multiple members
from a channel, only one member. modify the function to only accept and
remove one user

* no need to pass the entire channel object. only need the channelId which
is already passed into the screen

* do not pass the entire user model, only the userid and if user canManage
  (is sysadmin or channel admin)

* move members constants to its own file and out of general.ts file

* pass channel displayName instead of the entire channel object

* not need to store the user as it is already in the store from the
fetchProfilesInChannel call

* implement device emitter to notify the parent to remove to the user from
the user list

* rename constant in reveal removing a member from a channel.  Might need for another team removal later.

* add snackbar after user is removed

* remove unnessary filter

* remove paging. Server response is not paginated
deconstruct intl

* create EMPTY const

* simplify getProfiles function

* move constants to top of file

* add function to remove the user from the server

* clean up dependencies

* remove @app/ prefix from imports

* add comment describing reason for switch / case

* rename varaible to be more intention revealing

* calculate isDefaultChannel and pass in as prop so don't need to
query for each user

* if user cannot manage, do not show the manage nav button

* move options const into function that uses it

* have the caller of handeRemoveMemberFromChannel fetch channel stats, not
the action

* nit formatting

* s/canManage/canManageMembers/

* use existing observeCanManageChannelMembers function
function only requires channel id

* move userInfo and manage user options to their own components

* calculate bottom sheet snap points when in manage mode

* implement correct permissions for managing users.  For now, only channel
admins can manage users (including deleting members)

* working on section creation

* use map instead of arrays

* - handle user profile sections differently when in members are provided (manage mode)
- emit event when user role is changed
  - modify the channelMembers in manage members modal after changing
    user role

* remove commented code

* deconstruct options

* sort dependencies and add loading dependency

* - when removing a user, remove them from channelMembers state also
- don't add empty sections to the user list results

* user profile coming from ManageChannelMembers is UserProfile joined with
their ChannelMembership.  Can now check for scheme_admin to see if the
user is a channel admin

* deconstruct locale from intl and remove intl const

* Add SearchUserOptions type to provide type checking when creating options for searchProfile
action and searchUsers client api

* correct comment

* deconstruct MANAGE_OPTIONS

* Remove unused event constant

* nits

* Push header title in to the UserProfileTitle component

* Put constants back so Diff of file is smaller

* Combine switch statements
Remove isOptionItem.  These are always action items

* Wrap onAction in a usecallback

* Add help comments

* Add i18n to section titles

* Create RenderItemType for renderItem callback

* update testID
update snapshots

* CanManageMembers is deterimined by observeCanManageChannelMembers

* Add members chanenl option

* Update after merge

* Sort in order of options shown

* nit refactor

* Modify client getProfilesInChannel allow passing more options than sort.
- sort the profiles by admin
- do not show deactivated users in the manage members modal

* Profiles are now sorted by admin.  We can maintain the alphabetical sort
also by iterating over the profiles instead of members which are not alphabetical

* Type the get users Api object

* Add type.
Active option is a boolean, not a string

* only initialize if needed. Moved inside the check for members

* Create type for Manage Member Options

* Remove one liners and call directly in the switch block

* Keys to the map do not need to be translated. Only translate the title
Place the Admins section always on top

* Add removeFromChannel as a dependency

* Remove manageMode option from the title component
- add imageSize prop
- add headerText prop

* Do not show deactivated users in search

* When users are showing and not in manage mode, allow the user to tap and
open the profile for the user (in non-manage mode)

* Add fetchOnly to getMemberInChannel function
Add fetchOnly to updateChannelMembersSchemeRoles function
Remove getMemberInChannel from handleUserChangeRole in manage_channel_members because it is already called via updateChannelMembersSchemeRoles

* Remove todo from comment

* Don't use state for defining action text, icon, and isDestructive. just
set them based on the prop value manageOption

* Added correct permission check for can user manage member roles

* Add can manage member roles prop

* Calculate snap points based on manageMemberRoles prop

* Calculate snap point based on if user can remove other users

* Do not show options if you cannot remove or manage members

* Fix post merge issues

* No need to batch because only manipulating a single model

* Remove comment

* Rename variable

* Split and sort props into multiple lines for readability

* Nit

* Make dependency more specific

* Remove comment.  Doing this requires writing a custom search function in
the app that would need to guarantee the same results as a server call

* Add logError to functions with catch

* Add ticket reference

* Remove await from functions that are updating the database.  Components
that observe models these modify will get the update based from the
observable change.

* Keep track of which section is first so that the tutorial highlight
selects the first user profile of the first section

* Add a second user that creates a new section for testing tutorial

* Remove unused prop

* Update snapshot to include second user

* Use getServerDatabaseAndOperator

* remove testID change. Added a ticket to fix later

* Revert tests to only one user to test if previous tests worked

* Add new test that has 2 users

* Add ticket context as comment

* Add channelId as dependency

* Use useCallback for updateChannelMemberSchemeRole

* Remove async

* mounted.current should only be used in an effect that executes on the
first render

when user has permission to manage members changed, there is no need to
get the profiles again

* Add await for function

* Always reset loading to false after getting profiles

* use !text instead of const value using Boolean()

* add dependency

* Add manage members ids back

* When fetching users for the channel, always store them in the database.
Otherwise tapping a user might not be in the database and tapping on
them will cause a crash

* Fetch the user profile from the server when opening the user profile

* Checking management permissions should be based on the current user, not
the user of the profile being opened

---------

Co-authored-by: Avinash Lingaloo <avinashlng1080@gmail.com>
2023-02-03 10:42:12 +02:00
Elias Nahum
82f0b014f4 Update RN and deps to fix ANR issues (#7078) 2023-02-02 14:27:42 +02:00
Elias Nahum
5aaff10664 Use timeout defaults for iOS Share Extension and Notification Service (#7051)
* Use timeout defaults for iOS Share Extension and Notification Service

* more logs

* Add more logs, handle errors and safe parse the filename
2023-02-01 21:22:28 +02:00
Joseph Baylon
70bdfcf8fd Detox Maintenance: Update deps, fix import, fix failing tests -- iOS only (#7070)
* Detox Maintenance: Update deps, fix import, fix failing tests

* Revert message reply step 3

* Try fresh install per test file
2023-02-01 08:32:57 -08:00
Elias Nahum
c9b56e55c4 Only fetchMissingDirectChannelsInfo when no display name is set (#7060) 2023-01-31 22:01:57 +02:00
Elias Nahum
265b8b2193 Request permissions for Android push notifications and refactor code to use network client (#7059) 2023-01-31 21:33:35 +02:00