Commit graph

707 commits

Author SHA1 Message Date
Daniel Espino García
85e01a7fb6
Add model mocks to TestHelper (#8715)
* Add model mocks to TestHelper

* Address feedback
2025-03-28 09:40:08 +01:00
Guillermo Vayá
60d4e95229
[MM-63481] Don't substract keyboard height in Android as it was already substracted (#8697)
* don't substract keyboard height in Android as it was already substracted
2025-03-21 11:41:01 +01:00
Daniel Espino García
b475f2bedb
Fix team sidebar not showing thread unreads (#8624)
* Fix team sidebar not showing thread unreads

* Fix tests

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2025-03-18 13:33:15 +01:00
Daniel Espino García
782b1c69a8
Make attachments and app bindings more robust yet secure (#8570)
* Make attachments and app bindings more robust yet secure

* Fix tests

* i18n extract

* Address feedback

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2025-03-14 12:02:32 +01:00
Maria A Nunez
7063e5efa8
Updated empty state images (#8659)
* Updated search empty images

* Updated channel empty state images

* Styling

* Added unreads, threads, mentions and saved messages empty state images

* Removed withTheme

* Update snapshot

* Fixed color for unread sidebar svg
2025-03-13 17:03:30 -04:00
Elias Nahum
a5a1e53827
Biometric prompt, Jailbreak / Root detection and screenshot prevention (#8645)
* Handle biometric authentication

* jailbreak/root detection and biometric small fixes

* remove server from initializeSecurityManager and fix loginEntry

* Add screen capture prevention and other small fixes

* added unit tests to SecurityManager

* added shielded nativeID to protect views

* use MobilePreventScreenCapture instead of MobileAllowScreenshots in config type definition

* Apply Swizzle for screen capture on iOS

* Apply patch to bottom sheet to prevent screen captures

* fix ios sendReply

* Fix SDWebImage swizzle to use the correct session

* Fix potential crash on Android when using hardware keyboard

* rename patch for network library to remove warning

* add temp emm reference

* fix initializeSecurityManager tests

* fix translations

* use siteName for jailbreak detection when connecting to a new server

* fix i18n typo

* do not query the entire config from the db only the required fields

* migrate manage_apps to use defineMessages

* use TestHelper.wait in tests

* use defineMessages for security manager

* fix missing else statement for gm_to_channel

* created a TestHelper function to mockQuery and replace as jest.Mock with jest.mocked

* fix unit tests

* fix unit tests (again) and include setting the test environment to UTC

* Fix keyboard disappearing on iOS

* update react-native-emm
2025-03-13 14:07:41 -04:00
Elias Nahum
d84a0afd3a
Avoid unnecessary re-renders (#8673)
* Only set the height on the message component if it ends up being greater than the maxHeight to avoid re-renders

* Cache the teams theme to avoid unnecessary computation and re-renders

* useDidUpdate instead of useEffect to avoid setting the theme preference without need

* add comment on clear cache
2025-03-13 21:28:48 +08:00
Elias Nahum
9bdaed498a
Fix list scrolling inside bottom sheet (#8648) 2025-03-12 17:29:50 +08:00
Elias Nahum
0c24a646d4
Improve emoji picker performance introducing flashList (#8650) 2025-03-11 22:09:46 +08:00
Elias Nahum
915692d828
Do not use extra keyboard on Android (#8651) 2025-03-11 22:04:15 +08:00
Elias Nahum
2c32322bc7
Fix more messages indicator on read only channels (#8652) 2025-03-11 07:32:22 +08:00
Guillermo Vayá
0addf49021
[MM-62701] [MM-62176]Edit custom profile attributes in user profile (#8557)
* feat: Add support for custom profile attributes in edit profile form

feat: Add support for custom profile attributes in edit profile

refactor: Normalize whitespace in CustomAttribute type definition

fix: Resolve type mismatch for customAttributes in UserInfo interface

test: Add test for udpateCustomProfileAttributeValues method

fix typing, submit changes to server

missing files

test: Add tests for CustomProfileField component

fix naming

fix imports

fix

feat: Add field_refs hook for managing field references

feat: Make `setRef` ref parameter optional with default no-op implementation

refactor: Replace CustomProfileField with useFieldRefs for profile form

refactor: Optimize edit profile screen imports and custom attributes handling

refactor: Move custom attributes logic to remote actions in user.ts

address PR reviews

test: Add tests for custom attributes in edit profile

test: Add tests for EditProfile component with custom attributes

fix: Add UserModel type assertion to currentUser in edit profile tests

test: Add tests for ProfileForm custom attributes functionality

test: Add comprehensive tests for useFieldRefs hook

test: Add tests for fetchCustomAttributes and updateCustomAttributes

add tests

remove unneeded files

review changes

remove counter from hook

remove package.resolved

create interface for reuse of record

* fix signature type
2025-02-19 15:51:59 +01:00
Lucas Reis
8e854a8bdd
Implementing the Audio Playback/Download on the chat (#7900)
* feat: added new check for isAudio and added the supported mime types

* feat: adding the progress and audio on the audio file message

* feat: finishing the layout of the audio_file

* feat: play and pause audio

* feat: update the progress bar when audio is playing

* feat: update the timeframe of the audio

* feat: update with the new design

* feat: adding download and preview

* feat: creates a hook for the file download and preview

* feat: adding useCallback to make the return stable

* fix: iOS issue when playing in loop

* feat: adding localization for the error

* fix: removing code tha was inserted for debug

* feat: add a new line on the en.json

* fix: fixing types

* feat: adding the onSeek method inside the progress bar

* feat: changing progress value to animated value

* feat: changing to GestureDetector and making the seek method work

* feat: adding a touchable without feedback to prevent the audio to triggering other page

* feat: adding the drag on the seek method

* feat: making the download button more gray

* fix: fix tests

* fix: prevent onProgress from clearing the seconds when the audio is paused

* feat: clamping the position of the cursor to never be dragged offscreen

* feat: enhancing the experience of dragging the cursor on the progress bar

* feat: differentiate between the throttles

* feat: remvoing the aac audio files support

* feat: pausing if the focus has changed

* feat: render differently the audio file when in the files list

* refactor: optimize audio file component by using useCallback for event handlers

* refactor: extract stopPropagation function for better readability in AudioFile component

* feat: implement custom useThrottled hook and replace lodash throttle in AudioFile component

* refactor: update useThrottled hook to accept a generic callback type

* fix: loading of uri of audio files after merge

* feat: add audioFile style to enhance layout for audio files

* fix: tests
2025-02-19 11:17:30 +01:00
yasser khan
9976cacec4
Add ability to run detox tests on Android (#8553) 2025-02-14 01:26:53 +05:30
Elias Nahum
ee66890d32
MM-62915 and MM-62919 (#8568) 2025-02-08 07:17:15 +08:00
Julien Tant
fb9760151c
[MM-60405] Crossteam search (#8411)
* Add new team picker for search

* try fix result header

* fix style

* add test for team picker

* add some tests

* add tests on team list and team list item

* hide All Teams search behind FF

* use style variable for separator

* ALL TEAMS does not have a search history

* Update app/components/team_list/index.test.tsx

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

* move ALL_TEAMS_ID to a constant file

* memoize the construction of team list to prevent useless allocation

* combine pushes

* move style to stylesheet

* revert changes to Package.resolved

* improve team list index tests

* add test to ensure team picker does not show for just one team

* add test to ensure the file icon filter only shows when i'm on the file tab

* improve jsx readability by making the if test positive

* add test to make sure team picket does not show if there's only one team

* test: remove snapshot and add expect that separator exists in index 0 but index 1 (#8474)

* Trigger Build

---------

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Rahim Rahman <rahim.rahman@mattermost.com>
2025-02-05 13:46:38 -07:00
Rahim Rahman
dc45bcb4a6
fix(MM-62461): uploading image attachment shows new message (#8528)
* fix(MM-62461): uploading image attachment shows new message

* remove console.logs

* clean up unit test

* clean up unneeded unit tests
2025-01-29 22:44:40 -07:00
Rajat Dabade
1bd2e0b665
MM-62726 fix the active label color for channel and thread (#8523)
* MM-62726 fix the active label color for channel and thread

* Updated snapshot
2025-01-28 14:43:45 +05:30
Rahim Rahman
11022322d6
fix(MM-60645): missing bookmark emoji (#8518)
* fix(MM-60645): missing bookmark emoji
* add test
2025-01-27 11:01:08 -07:00
Daniel Espino García
25919131fc
Fix styles for add people ephemeral message (#8494) 2025-01-22 13:12:59 +01:00
yasserfaraazkhan
2830d06fc2
E2E: Mobile Drafts tests cases (#8469) 2025-01-22 04:02:14 +05:30
Daniel Espino García
438edd96f6
Fix edit attachments (#8468)
* Fix edit attachments

* Address feedback
2025-01-17 12:41:14 +01:00
Daniel Espino García
592b3805f1
Fix timezone crash (#8485)
* Fix timezone crash by adding all timezones to the polyfill

* update snapshots; be careful about undefined: diff on local vs CI

* one more that's different locally vs CI

* i18n

---------

Co-authored-by: Christopher Poile <cpoile@gmail.com>
2025-01-16 17:29:57 -05:00
Elias Nahum
2f3dfbbbfa
Update dependencies and upgrade to RN 0.76.5 (#8421)
* update dev deps

* partial update dependencies

* update watermelondb

* update rn to 0.76.5, expo to 52.0.18 and others

* upgrade android firebase

* upgrade detox deps

* fix package-lock.json

* update emm and paste-input

* update turbo-log

* update network library

* fix tests

* review feedback

* fix Keyboard blocking signIn button

* Fall back to iphone 14 iOS 17.2 simulator as app crashes on iOS 17.4

* changes in deleteCredentialsForServer is causing a crash

* withOptions x2 clearly is wrong

* re-add cli-platform-apple fix

* fix: RN 0.76.5 issue with bottom sheet disappearing (#8478)

* experiment, using view vs BottomSheetView

* revert previous & try disabling enableDynamicSizing

* revert an unintended removal

---------

Co-authored-by: yasserfaraazkhan <attitude3cena.yf@gmail.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Rahim Rahman <rahim.rahman@mattermost.com>
2025-01-16 07:11:32 -07:00
Guillermo Vayá
805c14af6d
fix spacing between bookmarks, align + icon (#8476) 2025-01-15 14:50:40 +01:00
Rajat Dabade
84eded1bde
Mobile drafts (#8280)
* refactor: started with draft, done until new tabs for draft

* refactor: change the query and added the screen for draft

* added condition for fetching draft for channel delete or not

* refactor: added draft screen

* linter fixes

* Added draft post component

* added avatar and header display name for the draft post list

* added channel info component

* channel info completed

* proper naming

* added image file markdown acknowledgement support

* draft actions

* Fix the draft receiver in drafts

* separated send message handler

* Done with send drafts

* done with delete drafts

* change save to send draft

* handle lengthy message with show more button

* done with persistent message edit, send and delete drafts

* added alert for sending message

* added update at time for the drafts

* en.json extract fix

* Updated dependencies for useCallback

* refactor: added drafts list to animated list

* added swipeable component and delete conformation for drafts

* done with rendering of images in markdown for drafts

* en.json issue fixed

* fix en.json issue

* refactor: en.json fix

* addressed review comments

* updated image metadata handling code

* linter fixes

* added the empty draft screen

* linter fix

* style fix

* back button an android takes to the channel list page

* en.json fix

* draft actions theme compatible

* CSS fix for draft channel_info and avatar component

* removed the badge icon and change font style drafts

* fix send alert sender name for GMs

* updated snapshot

* added testId to the drafts components

* updated send draft test id

* clicking on draft takes to the channel

* Added toptip for draft tours

* intl extract

* Rebase to main and reverted local testing changes

* Added tooltip for drafts

* addressed review comments

* reset navigation when click on a draft in draft tabs

* fix the theme issue and navigation issue

* reverted back the draft click navigation changes

* observing draft when hitting back button

* removed the unwanted animiation

* updated regex for parsing markdown

* removed unnecessary checks and change folder name

* removed react memo and merge unwanted observes function

* removed unnecessary comments

* changed the name for observing and querying draft function

* removed memo from component level

* Text to FormattedText component

* Text to formatted text, change image name

* added confirmation modal for deleting draft from bottomsheet

* using common send_handler for both draft and post

* removed magic number for tooltip and bottomsheet

* renamed channel_info to draft_post_header

* text to formattedText for Edit drafts

* removed unnecessary changes

* minor fixes

* mounting draft only when there is draft

* map to reduce

* renamed SwipeableDraft to DraftSwipeAction

* name fixes

* isValidUrl to isParsableUrl and added test

* added test and addressed minor review comments

* added inline component for the duplicate code

* inlt fixes

* clearDraft is not optional

* optimised categories_list.tsx component

* Swipeable to ReanimatedSwipeable, TouchableWithoutFeedback to Pressable and folder name changes

* Added comment and disabled eslint rule for showing warning

* fixed component file name

* minor'

* Removed deprecated Animated createAnimatedComponent flatlist

* added test for missing protocol check

* import change for SwipeableMethod

* active tab for tablet view

* Updated the drafts icons

* Updated compass-icon version to v0.1.48

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2025-01-13 18:40:03 +05:30
Daniel Espino García
d75cbcde7f
Fix interactive dialogs not showing (#8427)
* Fix interactive dialogs not showing

* Use conditionals
2024-12-18 15:54:08 -05:00
fxnm
9607f42243
fix: fixed image overflow in message attachments (#8361)
* fix: fixed image overflow in message attachments

* fix: fixed image overflow in message attachments
2024-12-06 08:27:42 +02:00
Daniel Espino García
d996ed8133
Fix join/leave messages not showing (#8396) 2024-12-06 07:46:15 +08:00
Daniel Espino García
9632ce5038
Surround text on file info for searches (#8391) 2024-12-04 07:57:23 +02:00
Daniel Espino García
7f21754b78
Fix 60879 (#8344)
* Fix 60879

* Address feedback

* Address feedback

* Add tests
2024-12-03 10:49:38 +01:00
Elias Nahum
7cb2ee75b3
Fix bottomSheet bottom insets (#8331)
* Fix bottomSheet bottom insets

* fix search team picker on android

* ux review

* fix footer padding for message priority modal on iPad
2024-11-29 12:50:09 +08:00
Elias Nahum
d25c6fe245
Extra keyboard (#8348)
* Add support to use the keyboard area with a component

* fix import

* add missing providers to involved screens

* Change the way we handle the keyboard to allow using custom components in that area

* review feedback
2024-11-29 11:58:13 +08:00
Daniel Espino García
732b17a75c
Add post props validation (#8323)
* Validate props

* Add calls changes and fix attachments

* Address feedback
2024-11-28 15:59:30 +01:00
Daniel Espino García
f911a29e4c
Fix MM-61710 (#8368) 2024-11-27 16:18:08 +01:00
Elias Nahum
7123c7f3c0
Ensure myTeam.id is not undefined (#8375) 2024-11-26 20:15:34 +08:00
Rahim Rahman
84d320afcf
test: more meaningful AnimatedNumber component test (#8309)
* better unit test for animated_number

* updated test

* update test

* clean up based on comments
2024-11-21 10:30:30 -07:00
Harrison Healey
0efa409023
MM-61148 Rewrite table parsing and improve error handling around Markdown code (#8300)
* MM-61148 Rewrite table parsing based off cmark-gfm

* MM-61148 Add better error handling to Markdown code

* Use logError instead of console.error

* Switch back to published release

* Update import paths
2024-11-15 12:23:44 -05:00
Elias Nahum
6e032a7a6f
Animate gif as default until MM-22242 is implemented (#8339) 2024-11-13 19:17:10 +08:00
Elias Nahum
ea2cb45a18
Login improvement (#8306)
* refactor to improve requests on login

* include in team sidebar order by display name teams not present in the order preference

* Fix iOS reload while developing

* fix code causing tests to fail

* feedback review

* update network-client
2024-11-13 08:06:12 +08:00
Daniel Espino García
e0992c0bf6
Add test notification tool (#8271)
* Add test notification menu

* Reduce the minimum version for testing purposes

* Address feedback

* Add missing strings

* Address feedback

* Fix snapshots

* Bump version limit and use correct link

* Fix tests

* Fix URL issues
2024-11-11 10:22:57 +01:00
Daniel Espino García
2649b4b63a
Remove app alias for imports (#8314) 2024-11-07 08:34:49 +08:00
Jesse Hallam
6f381cfcf5
MM-53775: hide Thread Overview until a reply occurs (#8316) 2024-11-06 13:01:42 -04:00
Rahim Rahman
97e74c92af
feat:proper badge theme use for server list (#8313)
* fix(MM-61209): mention badge incorrect theme color

* @asaadmahmood color correction

* @asaadmahmood borderWidth 1px

* remove borderWidth: 1
2024-11-05 07:11:17 -07:00
Rahim Rahman
aa85f22729
fix(MM-61209): mention badge incorrect theme color (#8312)
* fix(MM-61209): mention badge incorrect theme color

* removed expect-error with proper typing
2024-11-05 06:25:34 -07:00
TheoForger
ece82d75ca
[MM-60236] Remove ephemeral posts on refresh/during initial load (#8260)
* fix: remove ephemeral posts on refresh

* fix: remove ephemeral posts during app launch

* fix: remove code to await the cleanup

* use built in constant instead of string `system_ephemeral`

* remove sort from `queryPostsByType()`

* switch back to the `await` approach in `cleanupEphemeralPosts`

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-11-01 09:28:06 -06:00
Nicolas Le Cam
0c587ab427
feat: Switch FormattedDate component to Intl.DateTimeFormat (#8276)
* feat: Switch FormattedDate component to Intl.DateTimeFormat

* feat: Revert stylistic only changes

* Add tests

* Take code review into account

* Fix tests by forcing timezone

* Use constant formats in DateSeparator to avoid uneeded rerenders

* Add UserTimezone tests
2024-10-30 14:30:17 -06:00
Elias Nahum
534aeaaef6
Fix sidebar teams order (#8281) 2024-10-30 17:12:58 +08:00
Tanmay Thole
a580642114
feat: Add visible to you text on ephemeral posts (#8245)
* feat: Add visible to you text on ephemeral posts

* docs: update localization file

* style: system header of ephemeral post

* feat: visible to you text for ephemeral posts
2024-10-30 10:01:49 +01:00
Rajat Dabade
e4dc8dbbfe
MM-59973: fix the emoji count 0 issue when archive and unarchive chan… (#8146)
* MM-59973: fix the emoji count 0 issue when archive and unarchive channels

* ref to null and initialing it

* refactor: added a safe condition

* refactor code

* more clean up

* clean-ups

* index to tosting as a key to component

* refactor code

* fix: (MM-59973) emoji count 0 update (#8256)

* reversed from all useMemo to useMemo + useEffect
* tried to include everything into useMemo was an anti-pattern
* moved back to useMemo + useEffect
* previousNumber and animateToNumber comparison has some flaw when dealing with difference length between the two

* simple fix

* fix more silly mistakes

* move _previousNumberString to constant

* Test: increase timeout-minutes to 120 for e2e test

* reverted the timeout-minutes back to 40

---------

Co-authored-by: Rahim Rahman <rahim.rahman@mattermost.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
2024-10-23 16:17:37 +05:30
Abdullahi Abass
7dcb6ad4ce
fix: render channel links in threads list (#8205)
fixes: https://github.com/mattermost/mattermost/issues/27859

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-10-11 00:55:24 -06:00
Lucas Reis
603ea793f9
MM-60425 Making clickable images work inside Markdown (#8215)
* fix: disables the gallery click on images inside a markdown link

* feat: removing the logic for acknowledging children that is inside link

* chore: renaming for consistency
2024-10-07 15:57:26 -04:00
Pablo Vélez
0cbbe7266d
MM-60534 -fix rate my app broken styles (#8232)
* MM-60534 -fix rate my app broken styles

* use a simpler and more general approach
2024-09-30 18:17:11 +02:00
Elias Nahum
394da4487c
Various Fixes (#8212) 2024-09-13 04:46:15 +08:00
Rahim Rahman
00e05d581e
fix: MM-58164 Search text is behind the textbox while searching (#8026)
* fix: MM-58164 search text hides behind textbox
* clean up unit test for useCollapsibleHeader
* simplify math
* unlock doesn't need to use useCallback as it doesn't have any deps
* revert changes on unlock
* using lockValue & headerOffset directly into children props
* disable scrolling to prevent scrollValue from being updated
* properly snapping flatlist to the proper spot in a few scenarios

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-09-05 11:28:00 -06:00
Daniel Espino García
8eba95ad5c
Quick fix for post input not capitalizing the start of sentences (#8168) 2024-08-26 10:48:44 +02:00
Daniel Espino García
6ad21e1da3
Fix hardware keys not working as expected (#8156) 2024-08-22 10:15:39 +02:00
Claudio Costa
4e4bd8fe27
[MM-57781] Limit group calls to DMs only on unlicensed servers (#8075)
* Limit group calls to DMs only on unlicensed servers

* Update calls-common
2024-08-13 08:25:13 +02:00
Elias Nahum
0b83938d3c
update dependencies (#8131)
* update project depdendencies

* update detox dependencies

* update fastlane

* remove silencing console
2024-08-12 09:15:49 +03:00
Elias Nahum
b330847d95
Channel Bookmarks (#7817) 2024-07-18 09:10:28 +08:00
Daniel Espino García
f3de4445c2
Restore out of channel and some cleanup (#8050)
* Restore out of channel and some cleanup

* Fix i18n
2024-07-09 11:31:31 +02:00
Elias Nahum
a7224479d5
added utils unit tests (#8040) 2024-07-05 07:17:09 +08:00
Christopher Poile
92bdb2847b
[MM-57486] [MM-58008] Calls: Mobile ringing for incoming calls (#7984)
* notification ringing, settings screen, native code patch, ringing mp3s

* i18n

* play preview on first press

* prevent playing from background (only affects Android) to match iOS beh

* stop ringing/vibration on entering background

* ring when coming back from background and new incoming call is present

* no push notification sound when it's a call; improve ringing

* move sounds to asset folder; copy on postinstall for android bundling

* make Ringtone type a string enum

* make Android ring async + await ring and stop; changes from PR comments

* missing fields after merge

* release lock on an exception

* cancel sample ringing when turning notifications off

* copy sound files for android build

* typo

* update snapshots

* testing if the problem is copying the mp3 files

* fix android mp3 assets when building for non-release

* add sounds to .gitignore

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2024-07-03 10:22:46 -04:00
Daniel Espino García
b7791add7c
Use UUID native functions (#8032) 2024-06-20 18:22:59 +08:00
Elias Nahum
b8c088cc70
Upgrade RN as well as update or replace other dependencies (#8011)
* start upgrade to RN 74

* migrate react-native-fs to expo-file-system

* exclude expo-asset module

* fix database manager remove directory

* fix: android network helper

* include expo on android

* temporarily disable android dep lock

* replace react-native-create-thumbnail with expo-video-thumnails

* update patches file version

* fix android build on 74

* create local library to replace MattermostManaged, Notifications and SplitView modules with new arch support

* migrate app to use new mattermost-rnutils library

* remove unused flipper class for android unsigned

* fix mattermost-rnutils android foldedObserver lifecycle

* use mattermost-rnutils on Android

* use mattermost-rnutils on iOS

* path react-native-navigation to not crash when activity is not NavigationActivity

* create local library for android share extension with new arch support

* Replace ShareModule with @mattermost/rnshare library

* remove ShareModule from android native code

* update react-intl

* update nodejs to 20.x.x npm to 10.x.x and dev deps

* update @gorhom/bottom-sheet

* use MattermostShare conditionally based on the platform

* update @react-native-camera-roll/camera-roll

* remove unused react-native-calendars

* fix metro config

* fix terminate session race condition

* remove unused analytics

* replace react-native-device-info with expo-application and expo-device

* update @react-native-clipboard/clipboard

* update @react-native-community/datetimepicker

* update @react-native-community/netinfo

* update @sentry/react-native

* update react-native-document-picker

* update react-native-gesture-handler

* update react-native-share

* update react-native-svg and react-native-svg-transformer

* update react-native-vector-icons

* update babel

* update react-native-shadow-2

* update semver

* remove react-native-svg-transformer and convert svg files to svg components

* fix @mattermost/rnshare new-arch build on android

* remove react-native-create-thumbnail resolution in build.gradle

* create @mattermost/hardware-keyboard library to replace hw-keyboard-events

* fix hardware-keyboard library

* fix rnutils library

* create @mattermost/keyboard-tracker library

* replace react-native-keyboard-tracking-view with @mattermost/keyboard-tracker

* fix: rnutils to not crash on lateinit context

* fix: rnutils delete database

* revert changes to session_manager

* Removed react-native-webview and added expo-web-browser instead

With expo-web-browser we no longer need the webview for SSO login
the SSO login is now done by using "custom Chrome tabs" on Android
and ASWebAuthenticationSession on iOS

* remove patch for react-native-keyboard-tracking-view

* replace react-native-linear-gradient with expo-linear-gradient

* replace react-native-in-app-review with expo-store-review

* fix: shared group database directory on ios

* replace react-native-fast-image with expo-image

* remove unusued type def for react-native-keyboard-tracking-view

* replace react-native-elements and react-native-button with @rneui

* node version

* update sizzling methods

* fix tests using jest-expo

* replace jail-monkey with expo-device

* update babel deps

* update typescript eslint

* update rn and expo

* react-native-document-picker @react-native-camera-roll/camera-roll @react-native-community/datetimepicker react-native-reanimated react-native-safe-area-context

* update patches

* update @sentry/react-native

* upgrade react-native-navigation

* update expo & expo-image

* upgrade to working version of @sentry/react-native

* update node, cocoapods, bundler, fastlane versions

* @testing-library/react-native and eslint-plugin-jest

* fix: FloatingTextInput causing a crash with reanimated

* update sentry, localize, @types/lodash and uuid

* fix floating text input label

* update react-native-video

* fix: cannot calculate shadow efficiently on some components

* fix: reduce motion warning for bottomSheet

* fix: shadow on YouTube component

* update react-native-webrtc expo and @typescript-eslint

* audit fix

* fix swizzling bad merge

* temp use of github dependency for @mattermost libraries

* feedback review

* feedback review

* npm audit fix

* update bundle deps

* update @mattermost/react-native-turbo-log

* update deps
2024-06-19 09:33:45 +08:00
Christopher Poile
1f2a71c499
[MM-58581] Calls: End call confirmations (#8004)
* end call confirmations

* i18n

* remove unneeded asyncs

* better alert for android
2024-06-18 10:02:24 -04:00
Daniel Espino García
5f01f9e9af
Add performance metrics to the app (#7953)
* Add performance metrics to the app

* add batcher and improve handling

* Add tests

* Fix test

* Address feedback

* Address feedback

* Address feedback

* update podfile
2024-06-12 09:45:27 +02:00
Daniel Espino García
9628e15fb8
Fix user autocomplete not showing users not in channel (#7980) 2024-05-31 15:10:11 -04:00
Elias Nahum
83e4aba522
fix update image on account screen when updating profile image (#7978) 2024-05-31 16:44:31 +02:00
Daniel Espino García
663f9ba01a
Fix user autocomplete not always showing on search screen (#7977) 2024-05-31 09:10:04 +02:00
Daniel Espino García
82713830de
Fix more messages style (#7943) 2024-05-09 12:06:46 +02:00
Elias Nahum
1fd32bbab5
MM-58137 Fix crash by importing the correct Animated component (#7937) 2024-05-07 17:56:08 +08:00
Daniel Espino García
b4a3d7ff4d
Fix MM57562 (#7920)
* Fix MM57562

* fix: Add proper java version for android build

---------

Co-authored-by: Antonis Stamatiou <stamatiou.antonis@gmail.com>
2024-05-06 12:02:12 +02:00
Daniel Espino García
b98c184e7c
Fix gallery footer author image showing old image (#7910)
* Fix gallery footer author image showing old image

* Fix tests

* Address feedback

* Fix tests and minor refactor
2024-05-06 12:00:19 +02:00
Ilya Polozov
105073ce76
Prioritize @ autocomplete results based on recency and thread activity (#7506)
* changed autocomplete results on recency

* fixed issues

* fixed imports, moved get fucn to queries folder

* fixed en.json file

* fixed lint promblems

---------

Co-authored-by: Ilia Polozov <ilya.polozov@onza.me>
2024-05-06 10:45:44 +02:00
Matthew Birtch
205816cb93
MM-37809 Update Default Themes (#7907) 2024-04-24 06:54:09 +08:00
Daniel Espino García
9d1030a445
Push react native to 0.73.6 (#7863)
* Bump react native to 0.73.6

* iOS changes

* Fix gallery

* Fix test

* Add missing patch

* Unify react native navigation patch

* Update the rest of libraries

* iOS updates

* Update mattermost libraries

* Fix tests and final bumps

* iOS podfile update

* Update android locks

* Revert webrtc update because it was messing with the tests

* Update podfile for webrtc
2024-04-22 12:44:39 +02:00
Daniel Espino García
ca7915e2e3
Fix erratic behavior of pull to refresh on threads (#7911) 2024-04-22 09:55:20 +02:00
Aditya Pratap Singh Hada
6dcefaf1e4
[MM-56585]Show only unreads filter stays active after changing the 'Group unreads' setting (#7790)
* showing unread and threads, of group unread setting in on

* using third variable to maintain state for showing categories

* removed useState from useMemo

* Removed state, return orderctegroies if onlyUnreads & unreadsOnTop is true

* test cases updates

* removed onlyUnreads props from threads

* removed onlyUnreads

* test cases updated

* removed unnecessary changes

* removed onlyUnreads from dep

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-04-16 12:29:59 +02:00
Daniel Espino García
31b737da73
Fix id error when moving to a channel (#7890) 2024-04-08 09:52:42 +02:00
Tanmay Thole
97b06ccaf6
feat: Scroll to bottom element (#7851)
* feat: Scroll to bottom element

* fix: Scroll to bottom element message

* refactor: Removed unnecessary code

* refactor: code quality improved

* Update app/components/post_list/scroll_to_end_view.tsx

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>

* ci: update i18n

---------

Co-authored-by: Daniel Espino García <larkox@gmail.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2024-03-26 13:46:09 +01:00
Tanmay Thole
7b6f00a828
[MM-55988]: alert message in DM of persistent notification changed (#7743)
* fix: alert message in DM of persistent notification changed

* fix: alert message of persistent notification

* fix: persistent notifications text

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-03-04 10:06:20 +01:00
Christopher Speller
c6348ba63b
Add handling of posts with unsafe links. (#7815)
* Add handling of posts with unsafe links.

* Add more cases.
2024-02-22 12:55:01 -08:00
Julio Vc
8b32bc73c4
MM-56391: fixed search bar moving up in ios (#7796)
* MM-56391: fixed search bar moving up in ios

* chore: solved merging conflicts

* chore: removed auto formating in package-lock.json

* Update package-lock.json

* chore: reverted changes in package-lock.json

* resetted pr and fixed linting

---------

Co-authored-by: Julio Villalvazo Carrera <j.carrera@cyberpuerta.mx>
Co-authored-by: Mattermost Build <build@mattermost.com>
2024-02-22 10:44:47 +01:00
Elias Nahum
3653df354d
Revert "Channel Bookmarks (#7750)" (#7816)
* Revert "Channel Bookmarks (#7750)"

This reverts commit 2c5c878829.
2024-02-07 07:52:55 +08:00
Elias Nahum
2c5c878829
Channel Bookmarks (#7750) 2024-02-05 17:07:01 +08:00
Cedric Ong
6daa77f0da
remove usages of isTimeZoneEnabled (#7769) 2024-01-30 13:22:55 +01:00
Daniel Espino García
9ea38cfb3f
Fix MM55258 (#7729)
* Fix MM55258

* Address feedback

---------

Co-authored-by: Mattermost Build <build@mattermost.com>
2024-01-15 10:19:33 +01:00
M-ZubairAhmed
cc96982d24
MM-53479 : Improve design of keyword that trigger notification in mobile (#7458) 2024-01-13 06:56:22 +00:00
Christopher Poile
2c1f318868
MM-54866 - Calls: Transcription support (#7703)
* captions on videos from posts and searches

* add the patch for react-native-video which fixes subtitle downloading

* improve spacing

* fix patch file

* upgrade compass-icons; use cc icon

* revert patch overwrite

* fix patch

* use useMemo

* fix hitslops on pressables

* use new Caption format; refactor for clarity

* simplify tracks creation and use
2023-12-21 16:20:21 -05:00
Tanmay Thole
15fb6363aa
fix: height for multiple line floating text input (#7688) 2023-12-13 09:50:18 +01:00
Elias Nahum
bcf3dc61ab
MM-54575 fix server & user list tutorials (#7698) 2023-12-06 15:41:04 +08:00
Elias Nahum
de57c343f0
MM-55621 fix layout for tablets and foldables (#7697)
* MM-55621 fix layout for tablets and foldables

* feedback review
2023-12-05 11:08:43 +08:00
Erin A
7c747c28b6
[MM-54529] Prevent Persistent Notifications Error Message for DM Channel (#7648)
* Update index.ts persistentNotifications to include param and conditions for channelType

* Update message for "no recipients mentioned" to not occur for `DM_CHANNEL`.
* Update send message to either start with "Recipients" for DM channel or "@mentioned recipients"

* Include `channelType` in call to `persistentNotificationsConfirmation`

* Fix typo in persisten(t)NotificationsEnabled

* Remove ternary in translatable string

* Add channelType to callback's dependencies

* Make channelType optional
2023-11-30 09:49:20 +01:00
Caleb Roseland
79d7c628e4 Merge branch 'main' into MM-53902-cont 2023-11-27 15:09:55 -06:00
Elias Nahum
edef4ec4a3
Update libraries and dependencies (#7678)
* update js dependencies

* update react-native libraries

* update watermelonDB

* update RN to 0.72.7

* update fastlane

* fix remove_markdown/at_mention import

* update mattermost libraries

* update fastlane deps

* remove haptic-feedback patch

* update okhttp to 4.12.0 and patch netinfo to accurately identify VPN connections

* create ImaegStyles intersection type
2023-11-25 07:46:13 +08:00
M-ZubairAhmed
4b5489c7a7
[MM-53810] Add mobile markdown support for highlighting without notifications without configuration ability (#7663) 2023-11-23 17:11:06 +08:00
Caleb Roseland
a3b811dcfb refactor 2023-11-22 17:49:35 -06:00
KyeongSoo Kim
1a59bd9e0e
[MM-42586] Reaction toggle behavior (#7674) 2023-11-22 21:05:58 +08:00
Harshil Sharma
908e4c08d4
Merge pull request #7654 from mattermost/gm_to_channel
GM to channel conversion
2023-11-22 15:44:40 +05:30
Daniel Espino García
044cebc978
Show at mentions in RemoveMarkdown renderer (#7664) 2023-11-17 11:43:25 +01:00
harshil Sharma
ba9a84e3e6 Merge branch 'main' into gm_to_channel 2023-11-16 13:23:27 +05:30
Daniel Espino García
94e1334ebb
Maintenance fixes (#7665) 2023-11-15 15:07:00 +01:00
harshil Sharma
b0becb4cee Fixed menu icon 2023-11-15 16:29:04 +05:30
harshil Sharma
4af2ad2f69 review fixes 2023-11-15 14:13:55 +05:30
harshil Sharma
77a1f79790 Review fixes 2023-11-14 13:57:25 +05:30
harshil Sharma
7106c1807b Somre review fixes 2023-11-10 16:14:11 +05:30
harshil Sharma
34567cb74e Cleanup 2023-11-09 17:23:48 +05:30
harshil Sharma
4138a202f2 removed debug logs 2023-11-07 13:10:22 +05:30
harshil Sharma
aff310471a Merge branch 'main' into gm_to_channel 2023-11-06 10:12:49 +05:30
Christopher Poile
332aab134e
MM-55010 - Calls: more messages bar adjustments (#7620)
* refactor; tried to clarify more_messages; new design

* adjust more_messages text spacing

* small fix for height with incoming call on current channel

* move calls-specific code in the calls product behind a hook
2023-11-03 17:51:32 -04:00
Christopher Poile
a0b1367fd3
MM-54278 - Calls banners redesign (#7611)
* join call banner

* same style of voice-on indicator; avatar & emoji sizing spacing polish

* refactor all calls bars; new calls bars UI designs

* i18n changes

* fix for warning bar's close icon color

* refactor banners to normalize UI; new 'noone is talking' design

* fix for avatar in current call bar

* change design for incoming call on calls screen

* remove commented out code
2023-11-03 16:23:12 -04:00
harshil Sharma
3555eb5d72 Merge branch 'main' into gm_to_channel 2023-11-01 10:48:02 +05:30
Daniel Espino García
b9024f5183
Fix error around combined user activity (#7637) 2023-10-31 15:59:54 +01:00
harshil Sharma
2a65fa7816 Merge branch 'main' into gm_to_channel 2023-10-31 07:44:04 +05:30
Tanmay Vardhaman Thole
d8d607257f
copy header text in channel info implemented (#7605)
* copy header text in channel info implemented

* changes fixed
2023-10-30 12:13:52 +01:00
harshil Sharma
7c008a9726 Merge branch 'main' into gm_to_channel 2023-10-30 07:52:55 +05:30
harshil Sharma
c59d7fee8e WIP 2023-10-24 15:43:08 +05:30
harshil Sharma
2574c90754 WIP 2023-10-22 07:48:38 +05:30
harshil Sharma
a717ea520f WIP 2023-10-20 15:57:00 +05:30
Elias Nahum
12a29fe33e
Fix race condition when showing the turorial (#7599) 2023-10-19 10:34:21 +04:00
harshil Sharma
6b0de22824 Merge branch 'main' into gm_to_channel 2023-10-18 11:33:45 +05:30
harshil Sharma
cd3ff8be76 Added message box 2023-10-17 16:27:11 +05:30
harshil Sharma
65dc65df47 Used goToScreen instead of shoModal 2023-10-17 10:15:42 +05:30
Pablo Andrés Vélez Vidal
3638da2536 MM-54199 - attachment author name missing on mobile 2023-09-29 15:26:16 +02:00
Christopher Poile
0ec2b09fd5
MM-54117 - Calls: Support wiredHeadsets; generalize panel_item (#7545)
* generalize panel_item; support wiredHeadsets

* i18n
2023-09-25 08:45:14 -04:00
Harrison Healey
2651dd31e1
MM-53107 Add limit to Markdown nodes (#7528)
* MM-53107 Add limit to Markdown nodes

* Update commonmark to published version

* Rename field to camel case for consistency

* Update Markdown tests for removed children
2023-09-07 09:18:31 -04:00
Harshal sanghvi
70ea5dc0d1
Fixed: The emoji autocomplete does not appear after switching apps (#7520)
* added last viewed feature

* added constants

* storing data in global table and added server col

* fixed stack screen"

* fixed values for crt

* fixed threadid store logic

* added status on profile in bottom tabs

* fixed error for profile edit

* refactored and removed rule from eslint

* fixed variable in username field

* fixed screen blur focus issue

* keyboard show issue
2023-08-28 15:22:49 +02:00
Elias Nahum
68939c9fcc
update reanimated (#7500)
* update reanimated

* fix reanimated types
2023-08-14 14:38:05 -04:00
Khanh P. Huynh
191f498ab0
Fix cannot search user when pressing space (#7486)
* - Update AT_METION_SEARCH_REGEX to allow to search user name with space, similar to mentioning user.
- Convert search term to lowercase.

* Update CHANNEL_MENTION_SEARCH_REGEX to allow to search channel name when typing space

* Fix app crash when searching in channel only

---------

Co-authored-by: Huỳnh Phương Khanh <phuongkhanh@evolgroup.vn>
2023-08-09 11:38:06 +02:00
Khanh P. Huynh
0d8466a055
Fix cannot scroll acknowledgement bottom sheet of user list when there are many users (#7489)
* Fix cannot scroll acknowledgement bottom sheet of user list when there are many users

* - Updated showing user list for Tablet
- Added GestureHandlerRootView to avoid bug not show the list

* Wrap BottomSheet inside withGestures function

* Remove GestureHandlerRootView for BottomSheet component since it's been wrapped inside withGesture function
2023-08-09 10:48:21 +02:00
Lucas Reis
8bc1ec2dff
Fix: Show admin on channel members (#7472)
* feat: adding the scheme_admin info on the channel members user_list sections

* feat: adding the scheme_admin info on channel members when there is a search in the textbox
2023-08-07 09:41:47 +02:00
Daniel Espino García
8a32588507
Fix DMs in sidebar (#7468)
* Fix DMs in sidebar

* Properly handle view, show and open preferences

* Refactor openChannel to keep similar logic together
2023-08-02 11:51:33 +02:00
Lucas Reis
722871d165
[MM-48225] Reduce Padding/Margins from Files Tab and moving the Search Results to the FlatList (#7430)
* feat: reducing the padding/margins of tabs and filter icons on the Search Page

* feat: adds the results text inside the post_results and file_results

* feat: changes search results to use translation

* feat: updates text on search results to use FormattedText

* feat: removing text wrapper

* feat: removing margins and using an ItemSeparator to separate the rows of the file results

* feat: refactor spacing on post results and unnecessary top

* review: externalizing Separator on the file_results

* feat: add marginTop in all File components used inside the <Files> component
2023-07-25 10:11:37 +02:00
Elias Nahum
3effecd6a4
match desktop search and highlight results (#7445) 2023-07-18 12:17:19 -04:00
Elias Nahum
fa43f68a8f
Fix search hashtag (#7459) 2023-07-17 11:36:28 -04:00
Elias Nahum
40254fba96
fix: crash when reactor is missing (#7448) 2023-07-12 10:22:37 -04:00
Elias Nahum
4d94728d90
fix open code block when keyboard is opened (#7432) 2023-07-05 10:13:28 -04:00
Daniel Espino García
0a8eb836f6
Remove guest tags based on config (#7425) 2023-06-30 11:05:54 +02:00
Elias Nahum
01c9e1ab01
Fix image attachment overlap (#7416) 2023-06-20 11:58:04 -04:00
Daniel Espino García
21a4f606b4
Add badge to thread screen (#7404)
* Add mention badge to global threads and threads screens

* Tablet fix

* Remove changes on Thread screen
2023-06-20 09:37:24 +02:00
Christopher Poile
81dd44ae09
MM-52653 - Calls: Attach call to existing thread on /call start (#7338)
* send rootId when starting a call from a thread

* allow join to start calls in threads and with thread titles
2023-06-15 10:08:50 -04:00
Elias Nahum
a27ad43394
Fix onViewableItemsChanged item id (#7400) 2023-06-09 14:40:32 -04:00
Daniel Espino García
20dfb4f406
Fix issue with missing post headers on threads (#7378)
* Fix issue with missing post headers on threads

* Fix lint
2023-05-31 11:42:20 -04:00
Daniel Espino García
b6f62e35fb
Remove unneeded padding on the FindChannels screen on Android (#7368)
* Remove unneeded padding on the FindChannels screen on Android

* Refactor keyboard overlap
2023-05-23 17:33:37 -04:00
Ilya
265be35dce
Fixed Interactive dialog radio buttons style (#7331)
* Fixed Interactive dialog radio buttons style

* removed unnecacary spaces

* remove spaces

---------

Co-authored-by: Ilia Polozov <ipolozov@stsoft.ru>
2023-05-18 12:39:01 +02:00
Daniel Espino García
5a610f1620
Fix post priority bottom sheet (#7350)
* Fix post priority bottom sheet

* Remove unneeded tablet handling
2023-05-16 19:13:06 +02:00
Md_ZubairAhmed
4e01a94cdd init 2023-05-14 17:34:55 +05:30
Elias Nahum
5e9de9f4a2
Thread crash fix and other UI fixes (#7342)
* center align channel name in intro

* align custom status in channel header

* wrap long custom status on profile bottom sheet

* Fix LaTex render clipped on Android

* Add margin for users displayed in a list

* show user profile when tapping on self on channel members

* Fix Thread screen when rootId prop is undefined

* update snapshots

* fix server / login screen on small devices
2023-05-11 09:35:11 -04:00
Daniel Espino García
66a37b7032
Show saved posts in search and recent mentions lists (#7326)
* Show saved posts in search and recent mentions lists

* Add missing space
2023-05-11 08:16:11 -04:00