Commit Graph

67 Commits

Author SHA1 Message Date
Avinash Lingaloo
1e1992e979 MM-41391 Gekidou - Update Info.plist (#6000)
* update instance to workspace

* reviews from @carrie

Co-authored-by: Carrie Warner (Mattermost) <74422101+cwarnermm@users.noreply.github.com>

* replaced Mattermost with $(PRODUCT_NAME)

except the 'Beta' under CFBundleDisplayName

* Update ios/Mattermost/Info.plist

Co-authored-by: Carrie Warner (Mattermost) <74422101+cwarnermm@users.noreply.github.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2022-03-07 09:57:37 +04:00
Daniel Espino García
d5ece8a4a7 Handle test notifications on iOS (#6002)
* Handle test notifications on iOS

* Update ios/Mattermost/AppDelegate.m

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

* Update ios/Mattermost/AppDelegate.m

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

* Fix indent

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2022-03-04 10:10:56 +01:00
Elias Nahum
eaf4f3166e [Gekidou] update dependencies (#6019)
* Dependency updates

* npm audit fixes
2022-03-01 18:52:01 -03:00
Elias Nahum
5de54471b7 [Gekidou] Gallery (#6008)
* Gallery screen (ground work)

* Open the gallery from posts

* Open the gallery from post draft

* feedback review

* Feedback review 2

* do not remove dm channel names and localization fix

* update to the latest network-client

* do not override file width, height and imageThumbail if received file does not have it set

* bring back ScrollView wrapper for message component

* Remove Text wrapper for markdown paragraph

* Fix YouTube play icon placeholder

* Make video file play button container round

* Add gif image placeholder

* Save images & videos to camera roll

* Feedback review 3

* load video thumbnail when post is in viewport

* simplify prefix
2022-03-01 13:55:44 -03:00
Elias Nahum
5b9492356b Gekidou MultiServers second part (#5963)
* Edit Server display name

* Lock iPhone to portrait and iPad to landscape

* Create actions for app global to store device token and multi server tutorial

* Add MutliServer tutorial on first use

* WebSocket reconnection priority

* have isRecordGlobalEqualToRaw to not check for value

* Return early on edit server if error is found

* Prepopulate server screen with last logged out server address and name

* Add CompassIcon to circleCI asset generation
2022-02-17 10:42:06 -03:00
Daniel Espino García
55324127e1 [Gekidou] Post input (#5844)
* Initial commit post input

* Fix message posting, add create direct channel and minor fixes

* Fix "is typing" and "react to last post" behaviour

* Some reordering, better handling of upload error, properly clear draft on send message, and fix minor progress bar misbehavior

* Add keyboard listener for shift-enter, add selection between video or photo while attaching, add alert when trying to attach more than you are allowed, add paste functionality, minor fixes and reordering

* Add library patch

* Fix lint

* Address feedback

* Address feedback

* Add missing negation

* Check for group name and fix typo on draft comparisons

* Address feedback

* Address feedback

* Address feedback

* Address feedback

* Fix several bugs

* Remove @app imports

* Address feedback

* fix post list & post draft layout on iOS

* Fix post draft cursor position

* Fix file upload route

* Allow to pick multiple images using the image picker

* accurately get the channel member count

* remove android cursor workaround

* Remove local const INPUT_LINE_HEIGHT

* move getPlaceHolder out of the component

* use substring instead of legacy substr for hardward keyboard

* Move onAppStateChange above the effects

* Fix camera action bottom sheet

* no need to memo SendButton

* properly use memberCount in sender handler

* Refactor how to get memberCount

* Fix queryRecentPostsInThread

* Remove unused isDirectChannelVisible && isGroupChannelVisible util functions

* rename errorBadUser to errorUnkownUser

* extract localized strings

* use ClientErrorProps instead of ClientError

* Minor improvements

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2022-02-03 08:59:15 -03:00
Elias Nahum
4e8d655167 Fix gif animation speed on iOS ProMotion enabled devices 2022-02-01 17:56:21 -03:00
Elias Nahum
c9ca9fa093 update dependencies 2022-02-01 10:06:16 -03:00
Elias Nahum
aa84ccd808 update dependencies 2022-01-29 15:30:08 -03:00
Avinash Lingaloo
dff4f91441 MM-40364 [Gekidou] - Image Picker for Edit Profile (#5901)
* feature edit profile screen

* minor refactoring

* Apply suggestions from code review

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

* ts fixes

* revert floatingTextInput label

This reverts commit a778e1f761.

* code clean up

* Apply suggestions from code review

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

* code fix

* code fix

* Adding preventDoubleTap

* rename id to fieldKey

* Update edit_profile.tsx

* wip

* navigating through fields; partly done

* navigating through fields - partly done

* navigating through fields; partly done

* completed field navigation

* added theme into dependency array

* code clean up

* revert conditions for disabling fields

* Added colorFilters prop to Loading component

* Completed loading feature on Edit Profile screen

* code clean up

* Add profile_error

* renamed valid_mime_types to  valid_image_mime_types

* added props isDisabled to email field

* refactored next field logic

* fix

* fix

* code clean up

* code clean up

* Updated ESLINT hook rules to warning instead of disabled

* code fix

* code fix

* new line within your_profile component

* added memo for Field component

* added canSave to dependency array

* update loading component - color filter

* Update app/screens/edit_profile/edit_profile.tsx

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

* dependency fix

* fix to fetch my latest status

* fix to remove unnecessary user id for local action updateLocalUser

* prevents bouncing for iOS

* code revert

* Adding  textInputStyle and animatedTextStyle to FloatingTextInput component

* correction after dev session

* adding changes as per new ux

* Update edit_profile.tsx

* corrections after ux review

* ux review

* ux review

* code clean up

* Adding userProfileFields into useMemo

* Add enableSaveButton to dependency of submitUser

* Added react-native-image-picker

* fix picker util

* Added action for setDefaultProfileImage

* account outline on remove picture

* Update edit_profile.tsx

* fix image picker

* style fix

* fix image picker

* removed unused types

* mmjstool issue with integrity checksum

* perform camera permission check for Android

* fix to pull latest status

* updated ChangeProfilePicture to EditProfilePciture

* removed integrity key for mmjstool in package-lock.json

* corrections from pr review

* bumping react-native-image-picker to v4.7.1

* pod install

* update to hooks dependency

* fix profile picture component

* added event emitter from edit_profile_picture

* made hitslop a constant

* code clean up

* uploadProfilePicture as a remote action

* else if profileImage removed

* removed check on isBot

* update renderProfilePicture dependencies

* extractFileInfo with try catch

* updated snappoints

* Revert "updated snappoints"

This reverts commit 6d16d480a1.

* profile picture size

* refactored renderProfilePicture into its own component

* change to if else

* platform select for hasPermissions

* unneeded comment removed

* else if on prefix in edit profile picture

* track has update user info now

* moved image_picker under edit_screen and increased actionSheets item height

* added preventDoubleTap for imagePicker

* multiple uploads

* switch the conditions

* added alert box as requested by Marina

* Revert "added alert box as requested by Marina"

This reverts commit 20735c17a8.

* Apply suggestions from code review

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

* removed userInfos constant

* added useMemo for certain components on profile_picture

* converting account-outline into a constant

* added panelItem component

* adding return instead of making the function return

* eslint fix

* update i18n  desc

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

* hasPictureUrl transferred to file utils

* removing excess mediaType prop

* add USER_PROFILE_PICTURE_SIZE into constant/profile

* relocate hasPictureUrl method

* relocate hasPictureUrl
* rename ImagePicker to ProfileImagePicker

* removing isDestructive property from panelTypes.

* update sectionLimit for attachFileFromPhotoGallery

* Change animation for showModalOverCurrentContext to a quick alpha on iOS

* re-create PickerUtil if intl changes

* Combine styles in edit_profile_picture component

* Split profile image component into smaller components

* useCallback for showFileAttachmentOptions

* split comment into multiple lines

* edit_profile group refs

* remove unnecessary casting

* add new line to file.d.ts

* remove extra space for utils/index.d.ts

* allowMultiSelection for attachFilesFromFiles, default is false

* Split edit profile screen into smaller components

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2022-01-28 16:06:50 +04:00
Elias Nahum
55197b6125 update deps 2022-01-22 09:26:00 -03:00
Elias Nahum
2013f39a61 V2 dependency updates (#5907)
* Update to RN 0.67 & dependencies

* Update server displayName if already exists

* Allow adding only one reaction

* update to rn 0.67.1
2022-01-21 08:49:04 -03:00
Shaz Amjad
5762bc93b9 Corrects SemiBold to Semibold (#5903)
* Corrects SemiBold to Semibold

* Cleans font
2022-01-20 09:28:08 -03:00
Elias Nahum
6d73a14343 Fix re-login and hot reload crash (#5894) 2022-01-06 13:31:26 +02:00
Elias Nahum
fa88b86b36 downgrade from expo 44 to 43 (#5891) 2022-01-04 09:54:05 +02:00
Elias Nahum
112df5c3f8 dependency updates (#5890) 2022-01-04 08:30:55 +02:00
Elias Nahum
388a4248a0 Update dependencies (#5885) 2021-12-26 12:38:02 +02:00
Elias Nahum
442159ab78 Fix navigation 2021-12-14 11:45:12 +02:00
Elias Nahum
fb01c18143 [Gekidou] update dependencies (#5871)
* update dependencies

* Remove storybook env type def
2021-12-10 14:40:21 +02:00
Elias Nahum
3a8f1f1946 Update pods (#5857) 2021-11-30 11:43:35 +02:00
Jason Frerich
520a28962b [Gekidou] MM-39736 Login Flow (#5799) 2021-11-18 22:07:41 +01:00
Elias Nahum
9af1c16147 [Gekidou] - Custom navigation header (#5820)
* Custom navigation header

* Add Search props to header

* Add Search props to header

* Simplify example

* Set large subtitle opacity to 80%

* Add extra spacing on large title
2021-11-10 10:16:58 -03:00
Elias Nahum
880cfbb7ac Upgrade unimodules with expo to use expo-file-system 2021-11-06 18:08:22 -03:00
Elias Nahum
39982a4280 Gekidou deps (#5815)
* upgrade dependencies

* async-storage upgrade
2021-11-06 16:24:53 -03:00
Shaz Amjad
1c1d0e36aa MM-38682: Gekidou Homepage (Static) (#5756)
* Home page first pass

* Adds missing static elements, introduces button component

* Removes inlines styles

* Various clean ups and button component added

* Updates typography, and adds button util

* Removes button component

* Uses stylesheet.create for memoization

* Snapshots updated

* Podfile update / fix

* Flatlist!

* Tests updated

* Moves out server icon, styling fixes

* Sneaky buttons added, compass-icons list, and server_icon removed

* Snapshots

* Adds chevron to header

* Removes unnecessary files

* Tidies up header and error

* Address feedback

* Compass Icon const removed
2021-11-04 10:32:35 -03:00
Elias Nahum
f19c3b3b6c Enable Hermes on iOS (#5800) 2021-11-03 11:14:00 -03:00
Elias Nahum
790b1beb22 [Gekidou] push notifications (#5779)
* Push notifications entry point

* Process android notification natively only if RN is not initialized

* Database changes to store local channel viewed_at

* EphemeralStore wait until screen removed

* Move schedule session notification to utility

* Fix channel remote & local actions + added actions for markChannelAsViewed & fetchMyChannel

* Add fetchMyTeam remote action

* Add dismissAllModalsAndPopToScreen to navigation

* Improve post list component & add app state to re-trigger queries

* Improve WS implementation

* Handle push notification events

* Fix postsInChannel since handler

* Handle in-app notifications

* Post list to listen to column changes

* Track selected bottom tab in ephemeral store

* add useIsTablet hook

* in-app notifications on tablets
2021-10-27 17:53:11 -03:00
Elias Nahum
3bbcf2d358 [Gekidou] Update deps (#5772) 2021-10-19 17:19:48 -03:00
Matthew Birtch
5575ce6927 changed flattened ios app icon as per marketing request (#5768) 2021-10-19 16:21:35 -03:00
Daniel Espino García
d1e0c99c3d Gekidou websockets (#5671)
* Adapt websocket client

* Add Websocket Manager

* Address feedback

* Start websockets on init and login, and invalidate on logout

* Add temporal logging and bug fixing

* Working WS

* Add reconnect actions and periodic updates

* Address feedback

* Add missing change

* Several improvements on websocket reconnect and channel handling

* fix gekidou package-lock.json

* update Podfile.lock

* Address feedback

* Address feedback

* Address feedback

* Fix update channel delete at

* Catch errors on batchRecords

* Update app/queries/servers/channel.ts

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

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-10-19 19:16:10 +02:00
Elias Nahum
fcc6394502 Gekidou fixes (#5748)
* Use Intl based on user locale

* set PROMPT_IN_APP_PIN_CODE_AFTER to wait for 5 mins

* Observables Improvements

* Fix iPad external keyboard listener

* file model description
2021-10-13 14:13:39 -03:00
Avinash Lingaloo
7f91a6a78a Gekidou - Account Screen (#5708)
* Added DrawerItem component

* WIP Account Screen

* Added react-native-paper

* Added StatusLabel Component

* Extracted i18n

* TS fix DrawerItem component

* WIP Account Screen

* Added server name label under log out

* Updated translation

* WIP

* Fixes the Offline text style

* Added Metropolis fonts

* WIP

* Typo clean up

* WIP

* WIP

* WIP

* Added server display name

* Writing OpenSans properly

* WIP

* WIP

* Added OptionsModal

* Opening OptionsModal

* Added translation keys

* Writes status to local db

* Fix missing translation

* Fix OptionModal not dismissing

* Pushing status to server

* Refactored

* Added CustomStatusExpiry component

* Added sub components

* Added CustomLabel

* CustomStatus WIP

* Added Custom Status screen WIP

* WIP - unsetCustomStatus and CustomStatus constant

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* Retrieving RecentCustomStatuses from Preferences table

* WIP

* WIP

* WIP

* Added Clear After Modal

* WIP - Transations

* WIP

* Done with showing modal cst

* wip

* Clear After Modal - DONE

* fix

* Added missing API calls

* wip

* Causing screen refresh

* wip

* WIP

* WIP

* WIP

* Code clean up

* Added OOO alert box

* Refactored Options-Item

* Refactored OptionsModalList component

* Opening 'status' in BottomSheet instead of OptionsModal

* AddReaction screen - WIP

* Add Reaction screen - WIP

* Added EmojiPickerRow

* Added @components/emoji_picker - WIP

* Emoji Picker - WIP

* WIP

* WIP

* WIP

* SectionList - WIP

* Installed react-native-section_list_get_item_layout

* Adding API calls - WIP

* WIP

* Search Bar component - WIP

* WIP

* WIP

* WIP

* Rendering Emoticons now - have to tackle some fixmes

* Code clean up

* Code clean up - WIP

* Code clean up

* WIP

* Major clean up

* wip

* WIP

* Fix rendering issue with SectionIcons and SearchBar

* Tackled the CustomEmojiPage

* Code clean up

* WIP

* Done with loading User Profiles for Custom Emoji

* Code clean up

* Code Clean up

* Fix screen Account

* Added missing sql file for IOS Pod

* Updated Podfile.lock

* Using queryConfig instead of queryCommonSystemValues

* Fix - Custom status

* Fix - Custom Status - Error

* Fix - Clear Pass Status - WIP

* Fix - Custom Status Clear

* Need to fix CST clear

* WIP

* Status clear - working

* Using catchError operator

* remove unnecessary prop

* Status  BottomSheet now has colored indicators

* Added KeyboardTrackingView from 'react-native-keyboard-tracking-view'

* Code clean up

* WIP

* code clean up

* Added a safety check

* Fix - Display suggestions

* Code clean up based on PR Review

* Code clean up

* Code clean up

* Code clean up

* Corrections

* Fix tsc

* TS fix

* Removed unnecessary prop

* Fix SearchBar Ts

* Updated tests

* Delete search_bar.test.js.snap

* Merge branch 'gekidou' into gekidou_account_screen

* Revert "Merge branch 'gekidou' into gekidou_account_screen"

This reverts commit 5defc31321.

* Fix fonts

* Refactor home account screen

* fix theme provider

* refactor bottom sheet

* remove paper provider

* update drawer item snapshots

* Remove options modal screen

* remove react-native-ui-lib dependency

* Refactor & fix custom status & navigation (including tablet)

* Refactor emoji picker

Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-10-12 19:24:24 +04:00
Elias Nahum
0807a20946 fixed OpenSans, added Metropolis fonts & modified post text styles (#5728) 2021-10-07 17:20:39 -03:00
Elias Nahum
a31a361fca [Gekidou] Upgrade to RN 0.66.0 (#5711)
* Upgrade to RN 0.66.0

* Fix Remove existing credentials on first run

* Fix TS for unusued expect-error
2021-10-03 14:19:16 -03:00
Elias Nahum
2f8160d360 Remove team unreads and rely on channel member instead (#5710) 2021-10-01 16:07:57 -03:00
Elias Nahum
e2ecf2f0f7 Entry point when upgrading from v1 (#5707) 2021-10-01 09:56:28 +04:00
Elias Nahum
9ce4bfac38 update dependencies with working ios unimodules 2021-09-30 19:03:13 -03:00
Elias Nahum
8b23f1df37 Revert "update dependencies"
This reverts commit 39ef8f4823.
2021-09-30 18:14:40 -03:00
Elias Nahum
39ef8f4823 update dependencies 2021-09-30 11:19:04 -03:00
Miguel Alatzar
1d02d6e1e5 [Gekidou] app entry (#5609)
* Add channelEntry action

* Refactor appEntry

* Lint fix

* Some duplication removed

* Refactor app entry

* Refactor app entry and add prepareDestroyPermanentlyWithAssociations

* Handle team deletion

* Sync channels

* Lint fix

* Address review comments, take 1

* Address review comments, take 2

* Set initial channel ID to empty

* Fix types

* sort imports

* clean up app entry point

* Fix post header & highlight reply bar

* Style channel list text

* iOS Pods sync

* Rename goToChannel to goToHome

* Sync ios Gemfile.lock

Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-09-29 12:38:05 -03:00
Elias Nahum
a021e42c80 Update Podfile.lock and iOS project 2021-09-23 14:46:15 -03:00
Elias Nahum
4e0688aef5 [Gekidou] update dependencies (#5691) 2021-09-23 14:44:50 -03:00
Elias Nahum
c236cd9ab8 project.pbproj update 2021-09-20 18:17:27 -03:00
Elias Nahum
9ed616afa9 [Gekidou] iOS - Fetch and store data on push notification receipt 2021-09-20 17:59:42 -03:00
Elias Nahum
5700ce7c86 [Gekidou] post component tree and partial postList (#5637) 2021-09-06 08:22:55 -03:00
Elias Nahum
0139773c31 Fix logout on Android 2021-09-04 13:15:54 -04:00
Miguel Alatzar
06dc849c97 iOS - Fetch and store data on push notification receipt (#5645)
* Gekidou package and postNotificationReceipt

* Add back UploadAttachments functions

* ios - Fetch and store Posts

* ios - handle PostsInChannel

* Use queue and group for fetchAndStoreDataForPushNotification

* Handle channel and channel membership

* Handle post props

* Handle reactions

* Handle files

* Handle emojis

* Handle images

* Use notification data

* Credential fixes

* Lint fixes

* Fixes

* Call content handler after requests and db writes

* Handle posts in thread

* Remove comment
2021-08-31 15:43:57 -07:00
Avinash Lingaloo
2c193f2133 [GEKIDOU] Bottom Tab Navigation (#5600)
* Started with bottom tabs layout

* code clean up

* Added animation to bottom tab bar

* returns null if not focused

* code clean up

* Updating layout

* Updated modal screen

* Updated animation

* Updated animation

* Fix SafeArea on Home

* A few clean ups

* code clean up

* Fix issue with navigation on Android

* Use React Navigation in combination of RNN & create bottom tab bar

* Set tab bar line separator height to 0.5

* Fix snapshot tests

* Add home tab mention badge

* Apply new themes

* Home Tab badge

* Remove unused constants

Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-08-31 14:58:53 -04:00
Elias Nahum
b5c5949b7d [Gekidou] Update Splash Screen / App icons and Android snooze Push Notifications (#5658)
* Android push notification snooze

* Android splash & icons

* iOS splash & icons

* Update project assets

* Replace iOS assets using Fastlane

* Remove configure_telemetry_android from Fastlane script

* Update Fastlane with master branch

* Fix Android fastlane build

* replace reference for com.mattermost.rnbeta.* imports

* Set iOS ENTRY_FILE as index.ts
2021-08-31 14:58:09 -04:00
Avinash Lingaloo
0ef1dd44ea Gekidou about screen (#5591)
* Added about screen

* Remove TS error

* Needs clean up

* Testing login flow

* Converted About screen to functional component

* Improvements

* Sort imports

* Prevents double tapping

* Apply suggestions from code review

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

* Code clean up

* Adding translation keys

* Added some keys

* Updated AppVersion component

* Missed translation key

Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
2021-08-04 21:48:36 -07:00