Commit graph

591 commits

Author SHA1 Message Date
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