Daniel Espino García
1e355ee684
[Gekidou] Handle post related websocket events ( #5851 )
...
* Handle post related websocket events
* Address feedback and several fixes
* Fix lint
* Address feedback
* LastPostAt as latest post create_at, and lastViewedAt as date.now()
* Address feedback
* Change database for operator and add type imports
2022-01-24 12:43:21 +01:00
Daniel Espino García
d5228633b2
[Gekidou] Manage user websocket events ( #5862 )
...
* Manage user websocket events
* Revert ChannelMembership -> MyChannelMembership
* Address feedback
* Update channel display name when the user changes
* Minor name and refactoring changes from feedback
* Address feedback
* Address feedback
* Add line breaks for readability
2022-01-24 12:12:06 +01:00
Jason Frerich
5fd8121cf9
[Gekidou MM-39728] - Websocket Events - Preferences ( #5865 )
2022-01-21 20:45:32 -03:00
Elias Nahum
b8b51296c0
[Gekidou] post list ( #5893 )
2022-01-17 07:06:26 -03:00
Avinash Lingaloo
47e4306361
MM-39712 - Edit Profile Screen without image picker ( #5849 )
...
* 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
* Revert fetching status on userProfile
* EditProfile enable extraScrollHeight on iOS only
Co-authored-by: Elias Nahum <nahumhbl@gmail.com >
2021-12-23 15:16:55 +04:00
Daniel Espino García
b49b4050ac
[Gekidou] Add is_unread to MyChannel model ( #5878 )
...
* Make message_count become has_unreads
* Fix lint
* Re-add the message count
* rename has_unreads to is_unread and address feedback
* fix query with is_unread
Co-authored-by: Elias Nahum <nahumhbl@gmail.com >
2021-12-22 14:37:14 +02:00
Elias Nahum
7e6248dfb3
[Gekidou] - Channel Intro ( #5846 )
...
* Channel Intro
* Move avatar margins to post component per feedback review
* Channel intro redesign
* Fix preferences unit test
* Change group intro sizes
* Add Bot tag to DM Intro if they have it
* fix channel isTablet layout on split screen
* update snapshot
2021-12-21 17:44:00 +02:00
Kyriakos Z
675d8495b3
[Gekidou]: MM-39757 - Recent mentions ( #5823 )
...
* [Gekidou]: MM-39757 - Recent mentions
* Refactor channel_info to a separate component
* Fixes schema tests
* Fixes channel_info theme color
* Removes RECEIVED_MENTIONS table and model
Removes RECEIVED_MENTIONS table and model and saves recent_mentions in
the SYSTEM table under the recentMentions ID.
* Cleanup recent_mentions handler
* Adds i18n in recent_mentions screen
* Observe changes on the post messages
* Addresses review comments
* Batches records
* Addresses review comments
* Addresses review comments
* Addresses review comments
* Addresses review comments
* Fetches channels and users needed for mentions
Fetching mentions from all teams might result in missing info like user
profiles, and channels missing from the DB.
This commit fetches all missing users and channels.
* Adds empty state for recent mentions
* Prepares all missing models for channels
* Addresses review comments
* Fixes mention keys for recent mentions
User mention keys when asking for mentions should not include general
purpose ones, like @channel, @all, @here.
Fixes ActivityIndicator color in recent mentions screen.
* Removes top margin of mention message
* Addresses review comments
* Fixes group.name undefined
2021-12-16 12:26:43 +02: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
ecd80fcd4f
Add channel model property for shared channels ( #5749 )
2021-10-13 14:28:09 -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
2f8160d360
Remove team unreads and rely on channel member instead ( #5710 )
2021-10-01 16:07:57 -03:00
Elias Nahum
4e0688aef5
[Gekidou] update dependencies ( #5691 )
2021-09-23 14:44:50 -03:00
Elias Nahum
5700ce7c86
[Gekidou] post component tree and partial postList ( #5637 )
2021-09-06 08:22:55 -03: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
65c3e05fd8
[Gekidou] groups ( #5593 )
...
* Rename groups in channel/team to group channel/team
* Redefine groups schema
* Groups action and operator
* Add group at mentions
* fix uni test
* Update types/database/models/servers/group.d.ts
Co-authored-by: Avinash Lingaloo <avinashlng1080@gmail.com >
Co-authored-by: Avinash Lingaloo <avinashlng1080@gmail.com >
2021-08-05 19:03:46 +04:00
Avinash Lingaloo
e8ce78f39d
MM-36721 - [GEKIDOU] Porting Markdown components ( #5586 )
...
* Started with Channel Post List
* Added markdown hashtag
* Added TouchableWithFeedback component
* Added utils/bottom_sheet
* Removed BottomSheet in favor of future SlideUpPanel
* Added markdown_block_quote
* Added markdown_list_item
* Added markdown_list
* Added MarkDownTableCell component
* Markdown_table - in progress - need to verify TS
* Added markdown_table
* Update Podfile.lock
* Added deep_linking constant
* Added utils/draft
* Update config to include ExperimentalNormalizeMarkdownLinks
* Added markdown_link
* Added markdown_table_row
* Added ProgressiveImage and RetriableImage components and images utils
* Converted Retriable component to functional component
* Added type definition for commonmark
* Continuing with markdown TS
* Markdown - Typing props [ in progress ]
* Fix boolean flag with mardown block quote
* Adding observable config to markdown_link
* TS Fixes [ in progress ]
* TS fixes
* TS fixes - TextStyles
* Update markdown.tsx
* TS fixes on markdown
* TS Fixes - AtMention component
* AtMention [ IN PROGRESS ]
* Add markdown support
* Fix emoji and jumboEmoji on iOS
* Fix handleMyTeam operator
* Fix navigation style based on theme
* Fix iOS MattermostManaged deleteDatabse return error type
* wrap setNavigationStackStyles under a requestAnimationFrame
* Add preventDoubleTap to channel mention
* Increase double tap to 750ms
* Fix handleReceivedPostsInChannel chunk query
* Set initial navigation theme
* Swizzle FastImage on iOS
* fix preventDoubleTap test
Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com >
2021-08-02 20:30:17 +04:00
Elias Nahum
c452ef8038
[Gekidou] Login entry point ( #5568 )
...
* Login entry point
* feedback review
* sort imports
* Fix model relations
* Handle when no current team or current channel has been selected
* Fix MFA unit test
* update prepareCommonSystemValues arguments
2021-07-26 12:03:43 +04:00
Elias Nahum
8cd127a223
[Gekidou] Typings & PostMetadata structure ( #5542 )
...
* Typings & PostMetadata structure
* comment out unused code
* Remove duplicate interface
* Fix getPreferenceAsBool defaultValue
2021-07-15 11:49:02 -04:00
Elias Nahum
c64277bdbf
Gekidou Update deps ( #5530 )
2021-07-11 07:52:44 -04:00
Miguel Alatzar
134c4a49c5
Integrate react-native-network-client ( #5499 )
...
* fix: handle NSMutableData
* feat: integrate react-native-network-client
* fix: typos
* fix: semicolon
* fix: rename to urlVersion
* fix: add returnDataOnly arg
* fix: configure network client
* fix: headers
* fix: handling of serverVersion
* fix: rename requests to actions
* fix: action imports
* fix: no need to stringify body
* fix: sso flow
* fix: address PR feedback
* fix: invalidate client on logout
* fix: address PR feedback take 2
* fix: address PR feedback take 3
* fix: tsc issues
* fix: get csrf token during client creation
* fix: linter
* fix: invalidate client onLogout
* fix: event emitter
* fix: unit tests
* fix: apply linter fixes
* fix lint
* Modify actions to add / update database values
* Rename clien4.d.ts to client.d.ts
* fix empty & missing translations
* cleanup api client
* Cleanup init & squash some TODO's
* Emit certificate errors in NetworkManager
* cleanup user actions
* Fix NetworkManager invalidate client
* Invalidate client when server screen appears
* Update kotlin to 1.4.30 required by network-client
* patch react-native-keychain to remove cached credential
* update react-native-network-client
* Use app.db instead of default.db in native code
* fix use of rnnc on Android
* Init PushNotifications
* No need to reset serverVersion on logout
* fix logout action
* fix deleteServerDatabase
* fix schedule expired session notification
* use safeParseJSON for db json fields
* unsubscribe when database component unmounts
* cleanup init
* session type
* pass launchprops to entire login flow
* Properly remove third party cookies after SSO login
* recreate network client if sso with redirect fails
* add missing launch props from server screen
* use query prefix for database queries
* Add temporary logout function to channel screen
Co-authored-by: Elias Nahum <nahumhbl@gmail.com >
2021-07-06 11:16:35 -04:00
Avinash Lingaloo
3ee6e673c8
MM-35115 [Gekidou] Login flow - Email and Password ( #5402 )
...
* MM_35115: ADDED select_server screen
* MM_35115: ADDED select_server screen
* MM_35115: ADDED files on which select_server is dependent
* MM_35115: ADDED react-native-button
* MM_35115: Fixing TS issues [IN PROGRESS]
* MM_35115: Started withObservables [IN PROGRESS]
* MM_35115: Started withObservables [IN PROGRESS]
* MM_35115: withObservables - defaulting when no connection is available [IN PROGRESS]
* MM_35115: withObservables - some code clean up [IN PROGRESS]
* MM_35115: withObservables - some code clean up [IN PROGRESS]
* MM_35115: withObservables - some code clean up [IN PROGRESS]
* MM_35115: Substituting mapDispatchToProps [IN PROGRESS]
* MM_35115: Substituting mapDispatchToProps [IN PROGRESS]
* MM_35115: Substituting mapDispatchToProps [IN PROGRESS]
* MM_35115: Removed resetPing action [IN PROGRESS]
* MM_35115: ADDED app/client
* MM_35115: Preparing scheduleExpiredNotification
* MM_35115: Adding some todos
* Server & LoginOptions
* Use default server if available and autoconnect if configured
* Fix login header & manual server url
* MM_35115: Login Options[IN PROGRESS]
* MM_35115: Login screen - email [IN PROGRESS]
* MM_35115: Login screen - email [IN PROGRESS]
* MM_35115: Login screen - email - login api call [IN PROGRESS]
* MM_35115: Login screen - email - login api call [IN PROGRESS]
* MM_35115: Login screen - email - saving to server db [IN PROGRESS]
* MM_35115: Login screen - email - saving to System, Preferences to db [IN PROGRESS]
* MM_35115: Login screen - enforcing unique check on System entity [IN PROGRESS]
* MM_35115: Login screen - writing TeamMembership [IN PROGRESS]
* MM_35115: Login screen - writing Teams [IN PROGRESS]
* MM_35115: Login screen [IN PROGRESS]
* MM_35115: Login screen- Refactored DataOperator handlers [IN PROGRESS]
* MM_35115: Login screen - Proper clean up [IN PROGRESS]
* MM_35115: Login screen - completeLogin [IN PROGRESS]
* MM_35115: Improving DataOperator
* MM_35115: Improving DataOperator
* MM_35115: 80% DONE - login with email and password - some todos
* MM_35115: 80% DONE - login with email and password - some todos
* MM_35115: 80% DONE - login with email and password - some todos
* MM_35115: Removing unused app/queries folder
* MM_35115: Clean up
* MM_35115: Clean up
* MM_35115: Clean up
* MM_35115: Clean up
* MM_35115: Clean up
* MM_35115: Adding roles for MYTEAM
* MM_35115: Code clean up
* MM_35115: Code clean up
* MM_35115: Code clean up
* MM_35115: Adding rn-fetch-blob for Android
* MM_35115: Code clean up
* MM_35115: Code clean up
* MM_35115: Added test setup
* MM_35115: Fix database utils
* MM_35115: ADDED loadRolesIfNeeded
* MM_35115: Fix TS issue
* MM_35115: ADDED Tests setup
* MM_35115: Fix TS issues
* MM_35115: Fix TS issues
* MM_35115: Fix TS issues
* MM_35115: Added alternative to site name
* MM_35115: Added alternative to site name
* MM_35115: Removed hardcoded values
* MM_35115: Clean up
* MM_35115 - Fixed Android platform check instead of hermes
* MM_35115 - Replaced emptyErrorHandlingFunction with emptyFunction
* MM_35115 : Implemented TS fixes
* Update index.ts
* MM-35115 - Fix react-test-renderer issue
* MM_35115 - Optimizing DatabaseManager
* MM_35115 : Implemented getDatabaseConnection
* MM_35115 : Refactoring set/getActiveDatabase to use flag record
* MM_35115 : Refactored active database to use flag in Global entity
* MM_35115 : Updated manual database manager test
* MM_35115 : Fix operator/utils/test
* MM_35115 : Fix for base_handler
* MM_35115 : Fix test issues with Handlers
* MM_35115 : Fix test issues with prepareRecords
* MM_35115 : Fix wrapper test issue
* MM_35115 : Updated getMostRecentServerConnection to return the serverUrl as well as the connection
* MM_35115 : Refactored the way we call DataOperator
* MM_35115 : Updated database manager mock
* Add getMostRecentServerUrl function (#5440 )
* fix: add getMostRecentServerUrl func
* fix: add ts and tsx to editorconfig
* fix: rename functions
* fix: return type
* Fix unit test setup
* fix login screen unit tests
* MM-36205 [GEKIDOU] Login Flow SSO (#5454 )
* MM_35115: Starting LoginOptions SSO
* MM_36205: SSO [IN PROGRESS]
* MM_36205 : SSO [ IN PROGRESS ]
* Update sso_with_redirect_url.tsx
* MM_36205 : SSO Tests [ IN PROGRESS ]
* MM_36205 : Passing serverUrl to SSO screen
* Update sso.test.tsx
* Fix ViewTypes imports and keyMirror method
* MM_36205 : Code clean up
* Fix : Clean up imports
* Update: Aligning with PR 5452
* Fix: AndroidManifest file to include redirection ofr scheme mmauthbeta
* refactor: SSO Login method via Gitlab now navigates to Channel screen
* refactor: SSO Login without redirectURL is also working
* feat: SSO - main test completed
* feat: ADDED test for sso_with_redirect_url
* fix : eslint correction
* fix: Updated Loading component name
* fix : code clean up from reviews
* fix: reviews check
* fix: Added mmauthbeta into info.plist
* Revert "fix: Added mmauthbeta into info.plist"
This reverts commit d87cc23f5b .
* Update Info.plist
* Update AppDelegate.m
* feat: ADDED Forgot Password - Test [ IN PROGRESS ]
* feat: Forgot Password - Completed & Tested
* fix: Including MFA screen [ IN PROGRESS ]
* MFA - Properly tested
* Properly testing forgot_password screen
* Fix login.test.tsx
* Fix SSO method calls chain
* Update index.tsx
* Sort imports for sceen/navigation
* fix: Reviews
* Update signing + act in test
* Removed todo comment on MFA
* feedback review
* fix login tests
Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com >
* App initialization refactor (#5430 )
* fix: initial init refactor
* fix: await isServerPresent
* fix: more refactor
* fix: move out launch functions
* fix: remove comment
* fix: update credential functions
* fix: refactor launch functions
* fix: deep link parsing
* fix: lint change
* fix: update deeplink and notification handlers
* fix: indentation
* fix: add relaunchApp
* fix eslint
* refactor launchProps and autoconnect server for deeplink
* fix: use undefined
* fix: define OptionalLaunchProps
* fix: Android - handle server URL in push notification
* fix: rename func
* fix: use boolean launchError instead
* fix: use DatabaseModule
* fix: use DatabaseHelper instead
* fix: remove unnecessary null check
* fix: iOS - support for serverUrl
* fix: iOS - extract serverUrl in reply action
* fix: iOS - expose objc specific func
* fix: remove unnecessary deviceToken param
* fix: return if device is untrusted
Co-authored-by: Elias Nahum <nahumhbl@gmail.com >
* fix: bye bye modulePaths
* fix: ios build
* chore: remove unused aliases from babel.config
* chore: fix dependency format in package-lock.json
* chore: remove transparent window background color for android AppTheme
* chore: remove mattermost.js and use index.ts as app entry
* fix: login flow screens theme
* fix: Launch types
* chore: remove OptionalLaunchProps type
* fix: url utils unit tests
* chore: update en.json
Co-authored-by: Elias Nahum <nahumhbl@gmail.com >
Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com >
Co-authored-by: Miguel Alatzar <migbot@users.noreply.github.com >
2021-06-18 00:57:40 -04:00
Elias Nahum
9a4a93a1a5
Update v2 dependencies ( #5312 )
2021-04-14 10:55:29 -04:00
Elias Nahum
22e82dfc2a
Barebones code for v2
2020-11-17 14:20:58 -03:00