Commit Graph

144 Commits

Author SHA1 Message Date
Diego Mello 91f770cd37
Chore: Update React Native to 0.64.2 (#3245)
* Update non-dev patches

* Update dev patches

* Update minors

* Update dev minors

* Update few non semver

* Cookies

* datepicker, netinfo, base64 and bootsplash

* Patch cookies

* Update navigation

* Device info

* mocha

* localize

* react-native-picker-select

* vector icons, xregexp, popover

* try save husky

* document picker

* Remove emotion dev

* Downgrade some libs and make sure jest is passing

* Update storybook to stable

* mocha, axios, bootsplash

* Update lint job to node 15

* Update android image to api 29 and xcode to 12.4

* building

* Fix lint

* Get rid of Storybooks errors

* Patch react-native-simple-crypto

* Remove pods from git

* Stash simple crypto

* Stash Flipper

* Remove single crypto patch

* Add manage-pods command

* Update Xcode to 12.5.0

* Fix E2E tests

* Cleanup podfile

* Fix Storybook

* Remove RN patch

* Fix iOS build release

* Fix cocoapods cache on CI

* Try to fix pods using bundle

* Update gems

* Add app_store_connect_api_key env to CI

* APP_STORE_CONNECT_API_KEY -> APP_STORE_CONNECT_API_BASE64

* Rollback to older usage of app_store_connect_api_key

* tmp

* Run manage-pods on TestFlight

* Use Podfile instead of Podfile.lock for cache

* Increase no_output_timeout from 20 minutes to 40

* Restore node modules on upload-to-testflight

* Add pod install to docs
2021-07-21 12:50:39 -03:00
Reinaldo Neto 16fee2aa64
[IMPROVE] Convert Team to Channel (#3249)
* [IMPROVE] Add convert team to a channel

* Action to SelectListView and new words to i18n

* Implemented the post and it's working with selected channels or not

* Fixed the Convert Team Warning at english i18n and changed the function name

* E2E test completed in sequence the convert/move teams

* [IMPROVE] Add convert team to a channel

* Action to SelectListView and new words to i18n

* Implemented the post and it's working with selected channels or not

* Fixed the Convert Team Warning at english i18n and changed the function name

* rebase develop into this branch

* [IMPROVE] Add convert team to a channel

* Action to SelectListView and new words to i18n

* Implemented the post and it's working with selected channels or not

* Fixed the Convert Team Warning at english i18n and changed the function name

* rebase develop into this branch

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-07-09 15:46:24 -03:00
Reinaldo Neto 8517b1fd13
Chore: Add Lint to E2E tests (#3217)
* Added eslint plugin dependencie and fixed the eslint.js

* E2E Tests folder Assorted

* Linted all e2e, just e2e/docker that don't changed

* Update 09-jumptomessage.spec.js

* Removed async from describe function

* Remove outdated detox linter lib

* Add overrides to eslintrc

Co-authored-by: Gerzon Z <gerzonc@icloud.com>
Co-authored-by: Gerzon Z <gerzonzcanario@gmail.com>
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-07-02 14:39:39 -03:00
Gerzon Z a6ded9546b
[TEST] E2E for Jump to Message (#3202)
* E2E tests for jump to message

* Fix thread tests

* Remove unnecessary function and uncomment tests

* Minor tweak

* Fix tests and minor tweaks

* Minor tweaks

* Update docker data

* Fix docker

* Fix duplicated testid

* Minor refactor

* Fix jump to old message test

* Fix load on scroll

* Add fab test

* Minor addition

* stash

* almost there

* Final changes

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-06-22 16:41:55 -03:00
Reinaldo Neto c744672cbf
[TEST] Fixed E2E tests (#3201)
* [FIX] Test E2E i18n

* 01-createroom and 02-room fixed

* 03-roomactions and 04-discussions

* 05-threads and 07-markasunread from room

* Test 07-markasunread

* Set notifications 'YES' and delete true in 03-forgotpassword and 04-createuser

* Fixed the data that 02-team uses and changed the message in 07-markasunread

* Added group.alternate to data.docker and commented the test for the fallback language

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-06-11 15:23:43 -03:00
Diego Mello 267dfc547e
[FIX] Teams tests (#3196)
* Make team_main not optional and fix tests

* Undo isOptional and fix query

* Comment
2021-06-07 17:20:07 -03:00
Gerzon Z 91371e88d9
[NEW] Add Teams to Directory (#3181)
* Added Teams to DirectoryView

* Fix icon

* Minor tweaks

* add tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-06-04 15:07:26 -03:00
Gerzon Z c087780ccf
[TEST] E2E Tests for Teams (#3178)
* Added Create Team

* Added actionTypes, actions, ENG strings for Teams and updated NewMessageView

* Added createTeam sagas, createTeam reducer, new Team string and update CreateChannelView

* Remove unnecessary actionTypes, reducers and sagas, e2e tests and navigation to team view

* Minor tweaks

* Show TeamChannelsView only if joined the team

* Minor tweak

* Added AddChannelTeamView

* Added permissions, translations strings for teams,  deleteTeamRoom and addTeamRooms, AddExistingChannelView, updated CreateChannelView, TeamChannelsView

* Refactor touch component and update removeRoom and deleteRoom methods

* Minor tweaks

* Minor tweaks for removing channels and addExistingChannelView

* Added missing events and fixed channels list

* Minor tweaks for refactored touch component

* Added SelectListView and logic for leaving team

* Added addTeamMember and removeTeamMember

* Minor tweak

* Added deleteTeam function

* Minor tweak

* Minor tweaks

* Remove unnecesary changes, update TeamChannelsView, AddExistingChannelView, AddChannelTeamView, createChannel, goRoom and Touchable

* Remove unnecesary prop

* Add screens to ModalStack, events, autoJoin, update createChannel, addRoomsToTeam and Touchable

* Minor tweak

* Update loadMessagesForRoom.js

* Updated schema, tag component, touch, AddChannelTeamView, AddExistingChannelView, ActionSheet Item

* Fix unnecessary changes

* Add i18n, update createChannel, AddExistingChannelTeamView, AddChannelTeamView, RightButton and TeamChannelsView

* Updated styles, added tag story

* Minor tweak

* Minor tweaks

* Auto-join tweak

* Minor tweaks

* Minor tweak on search

* Minor refactor to ListItem, add SelectListView to ModalStack, update handleLeaveTeam

* Minor tweaks

* Update SelectListView

* Update handleLeaveTeam, remove unnecessary method, add story

* Minor tweak

* Minor visual tweaks

* Update SelectListView.js

* Update index.js

* Update RoomMembersView

* Updated SelectListView, RoomActionsView, leaveTeam method and string translations

* Update SelectListVIew

* Minor tweak

* Update SelectListView

* Minor tweak

* Minor tweaks

* Fix for List.Item subtitles being pushed down by title's flex

* Minor tweaks

* Update RoomActionsView

* Use showConfirmationAlert and showErrorAlert

* Remove addTeamMember, update removeTeamMember

* Update Alert

* Minor tweaks

* Minor tweaks

* Minor tweak

* Update showActionSheet on RoomMembersView

* Remove team main from query and move code around

* Fetch roles

* Update RoomMembersView and SelectListView

* Update rocketchat.js

* Updated leaveTeam and handleRemoveFromTeam

* Fix validation

* Remove unnecessary function

* Update RoomActionsView

* Update en.json

* updated deleteTeam function and permissions

* Added showConfirmationAlert

* Added string translations for teams

* Fix permission

* Added moveChannelToTeam and convertToTeam functionality

* Fix SelectListView RadioButton

* Fix moveToTeam

* Added searchBar to SelectListVIew

* Update RoomView , SelectListVIew and string translation for error

* E2E for Teams

* Fix tests and cleanup

* Minor refactor

* Wrong label

* Move/convert

* Fix convert

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-06-04 13:16:05 -03:00
Reinaldo Neto b833a2f8aa
[IMPROVEMENT] Allow discussions to be edited (#3137)
* Refactored the filter to work the edit for channel and discussion

* Removed the filter which type of room can be edit

Co-authored-by: Diego Mello <diegolmello@gmail.com>

* Fix tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-05-27 17:44:35 -03:00
Gerzon Z 8373571a07
[FIX] E2E Tests not working because of ES6 import (#3147)
* Update ITeam.js

* Minor tweak
2021-05-20 10:50:42 -03:00
Gerzon Z 1f0ff830a3
[NEW] Create Team (#3082)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-05-12 16:01:29 -03:00
Diego Mello eb38313075
[REGRESSION] Fallback not working when device's language is available (#3091)
* Always add 'en' i18n

* Add tests
2021-04-27 13:18:15 -03:00
Gerzon Z 3f4fa04f04
[CHORE] Update Detox to 18.10.0 (#3052)
* Updated detox and 5 tests

* Update e2e cases for Detox v18, update setUserStatus and added SET_STATUS_FAIL

* Downgrade mocha

* Exclude arm64 from building and update tests cases

* Update more tests cases, add registeringUser4

* Update more test files and add room-actions-scrollview testID

* Update package.json

* Remove unused username from test file and update 08-roominfo test file

* Fixing

* Mark as unread

* Fixing flaky tests

* Minor fixes

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-04-19 11:31:43 -03:00
Sumukha Hegde 9ce374dc2d
[CHORE] Refactor mention tracking logic (#2997)
* [Improvement] Improve mentions

This PR focuses on improving command, emoji, channel and user mentions.

* [Tests] Added e2e tests for mention improvement

* [Improvement] Modify slash command mention logic.
Added slash command with argument preview
Slash command should show only if the message bigins with /

* Return data on search for empty text

* Minor fixes

* Update e2e tests

* Minor fix

* [FIX] allow command mentioning in between text

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-04-07 15:56:16 -03:00
Diego Mello d04d0f27b6
[NEW] Basic support to Teams (#3016)
* Database migration

* RoomItem icon

* Team icons

* Teams group

* Small tweak on RoomTypeIcon

* RoomView Header

* Add team's channels to RoomView header

* Starting TeamChannelsView

* Icon size

* o data found

* Update TeamChannelsView, add teams subscriptions and send params to TeamChannelsView

* Use teams.ListRooms endpoint, render rooms list, remove unused functions

* Show team main on TeamChannelsView

* Disable swipe

* Pagination working

* Fix blinking no data found

* Search working

* Refactor to use BackgroundContainer while loading

* Go to room

* Cleanup

* Go to actions

* Events

* Lint

* Add debounce to go room

* Fix for tablet

* i18n

* Small fix

* Minor refactor

* Use local data when it exists

* Show last message

* Force teams migration

* Add stories to BackgroundContainer

* Remove unused component

* Move RoomViewHeader into containers folder

* Refactoring

* Testing RoomHeader

* i18n

* Fix server endpoint version

* Fix events

Co-authored-by: Gerzon Z <gerzonzcanario@gmail.com>
2021-04-07 15:31:25 -03:00
Gung Wah 45fe06111a
[TESTS] Move threads tests to its own file (#2965)
* [E2E TEST] Move threads test to another file

* changed descirbe title

* Rearrange files

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-04-01 17:08:15 -03:00
Gung Wah 704e071275
[FIX] E2EE password hiding automatically (#2972)
* [FIX] E2EE password hiding automatically

* add e2e test

* fixed hiding banner

* move e2e tests to 01-e2eencryption

* remove console.log

* Fix tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-04-01 16:27:46 -03:00
Diego Mello bb844e52fb
[REGRESSION] Clear local server cache not loading rooms (#3007)
* Fix clear cache

* Write e2e tests

* Fix lint

* Fix isRTL
2021-04-01 09:58:20 -03:00
Gerzon Z c5bf13c22d
[REGRESSION] Auth via deep linking not working (#3015)
* Update rocketchat and add e2e test for deep linking

* Update rocketchat and add e2e test for deep linking

* Update deeplinking e2e

* fix deep linking auth

* Test deep linking auth

* Fix deeplink to rid and add tests

* Small refactor

* Add non existing server test

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-03-31 18:01:20 -03:00
Gung Wah 715cc1eab7
[TESTS] Add E2E tests to delete server (#2954)
* [E2E TEST] Delete server

* fixed test for delete server

* fix tests

* minor changes

* Rename file

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-03-18 14:02:58 -03:00
Gung Wah 1eaf4b802b
[TESTS] Add e2e tests for mark message as unread (#2953)
* [E2E TEST] Add e2e tests for mark message as unread

* fixed test for draft message

* change test name

* move test to other file

* Remove unnecessary tests

* Rename file

* Update jest tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-03-18 13:52:47 -03:00
Gung Wah e1a7f43552
[TESTS] Add E2E tests to discussions (#2970)
* [E2E TEST] Discussions

* fix error Cannot find UI elemen

* Fix tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-03-18 11:36:50 -03:00
Gung Wah 45d0d4a5f0
[TESTS] Add E2E tests to directory (#2964)
* [E2E TEST] Directory

* Fix tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-03-18 10:32:48 -03:00
Gung Wah ec5840c076
[TESTS] Add E2E tests to group DM (#2961)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-03-18 10:29:38 -03:00
Gung Wah e164b6496c
[TESTS] Add E2E tests to draft message (#2960)
* [E2E TEST] Draft message

* Fix tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-03-18 10:27:37 -03:00
Gerzon Z 1ff6530a19
[FIX] App forgetting workspace when server is not finished added (#2798)
* [FIX] App forgetting workspace

* Added e2e tests

* Update login.js

* Update logout.js

* Reverted changes on login and share, updated init

* Update 08-persistantworkspace.spec.js

* Revert unnecessary changes

* Revert line change

* Update share.js

* Tweak tests

* Use wm shorthand

* Remove irrelevant calls to RocketChat.TOKEN_KEY

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-03-18 10:18:33 -03:00
yash-rajpal af34e5a700
[DOCS] Updated Quick Start docs link in e2e/readme (#2802)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-01-20 17:48:01 -03:00
Gerzon Z d83631d7f2
[FIX] Spotlight returning duplicated entries (#2805)
* Update rocketchat.js

* Updated search function

* Minor improvements

* Remove atIndex

* Add remove logic to remove duplicate data from response

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-01-20 16:53:12 -03:00
Dave Koo b0b9d62a91
[IMPROVEMENT] Add username on status messages (#2553)
* 1689 - missing user name for status messages

* 1689 - missing user name for status messages. Fixed broken e2e test "should pin message".

* Minor tweak

* Remove center style

* Small refactor on User

* Remove toLowerCase

* Update tests

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-12-01 16:26:03 -03:00
Daniel Maike 13985cf724
[FIX] App not prompting join code for password protected channels (#2514)
* Adding joinCode parameter

Co-authored-by: Vitor Leal <vitor_leal2201@hotmail.com>
Co-authored-by: Fernando Aguilar <fernando.aguilar@hotmail.com.br>

* Insert join code input

Signed-off-by: Vitor.Leal <vitor_leal2201@hotmail.com>

* Add joinCode field on db

Signed-off-by: Vitor.Leal <vitor_leal2201@hotmail.com>

* Add label i18 pt-br and en-us

Signed-off-by: Vitor.Leal <vitor_leal2201@hotmail.com>

* Add insert join code text

Signed-off-by: Vitor.Leal <vitor_leal2201@hotmail.com>

* Fix atribute name

Signed-off-by: Vitor.Leal <vitor_leal2201@hotmail.com>

* Add join text

Signed-off-by: Vitor.Leal <vitor_leal2201@hotmail.com>

Co-authored-by: Daniel Maike <danmke@hotmail.com>
Co-authored-by: Fernando Aguilar <fernando.aguilar@hotmail.com.br>

* Fix attributes joinCode, joinCodeRequired and pass attribute param in navigation

Signed-off-by: Daniel Maike <danmke@hotmail.com>

Co-authored-by: Vitor Leal <vitor_leal2201@hotmail.com>

* Fixing attribute joinCodeRequired pass to goRoom

Signed-off-by: Daniel Maike <danmke@hotmail.com>

* Changed textinput style

Signed-off-by: Daniel Maike <danmke@hotmail.com>

Co-authored-by: Vitor Leal <vitor_leal2201@hotmail.com>

* Delete not necessary attribute

Signed-off-by: Daniel Maike <danmke@hotmail.com>

* Fixing input style

Co-authored-by: Vitor Leal <vitor_leal2201@hotmail.com>

* Undo unncessary changes

* use a join code modal

* tests: e2e tests to join protected channel

* fix: undo unnecessary change

* tests: cancel join code

* Remove some tests

* Minor fixes

Co-authored-by: Vitor Leal <vitor_leal2201@hotmail.com>
Co-authored-by: Fernando Aguilar <fernando.aguilar@hotmail.com.br>
Co-authored-by: Djorkaeff Alexandre <djorkaeff.unb@gmail.com>
Co-authored-by: youssef-md <emaildeyoussefmuhamad@gmail.com>
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-12-01 14:30:39 -03:00
Diego Mello 40490ea66c
[NEW] Channel actions (#2644)
* room roles

* handle owner

* endpoints

* Leader and Moderator

* Remove user from room

* stash ignore

* Add subscription.ignored column

* ignore user

* Fix icons

* I18n

* Minor i18n fixes

* Direct Message and open action sheet after a normal tap

* Fix icon

* stash isIgnored

* isManualUnignored message

* Fix update

* Ignored

* Mute, moderator, leader, owner, remove from room

* ignore

* Tests

* pt-BR

* Update pods

* Apply requested changes

* Add RC version on requests
2020-11-30 17:00:31 -03:00
Diego Mello fade17d0de
[IMPROVEMENT] Add `Change Encryption Password` and `Reset E2E Key` (#2542)
* init

* Basic tests passing

* Add SecurityPrivacyView

* List.Item

* section

* Start removing theme as prop

* Remove StatusBar theme prop

* SafeAreaView theme prop

* Minor fixes

* List.Container

* Add translateTitle and translateSubtitle props

* Storybook

* Show action indicator

* Header

* Info

* Theme stories

* FlatList

* DisplayName

* Fix settings

* FlatList tweaks

* ThemeView

* Screen Lock Config

* DefaultBrowserView

* PickerView and User Prefs

* Notification Prefs

* StatusView

* Auto Translate

* InviteUsersEdit

* Visitor

* Minor fixes

* Remove Separator

* Remove iteminfo

* Font scale

* Legal

* Jitsi and e2e

* Block

* search, star, etc

* auto translate and notifications

* RoomInfo

* Refactor RoomActions

* lint

* Remove DisclosureIndicator

* padding horizontal 12

* Detox

* Tests

* SecurityPrivacy

* E2E encryption sec view

* stash

* Reset own key

* Reset key

* Change password

* Hide content

* Small refactor

* Fix tests

* Tests passing

* Change test order

* add pt-br

* Address review comments

* tests

* Missing i18n ptbr

Co-authored-by: Djorkaeff Alexandre <djorkaeff.unb@gmail.com>
2020-10-30 15:31:04 -03:00
Diego Mello 6271b885ee
[NEW] Threads (#2567)
* [IMPROVEMENT] Mentions layout without background

* Fix RoomItem

* Fix tests

* Smaller messagebox

* Messagebox colors tweak

* Beginning header buttons refactor

* Add HeaderButtons

* item with title

* Refactor

* Remove lib

* Refactor

* Update snapshot

* Send to channel on messagebox

* Add tshow

* Add showMessageInMainThread to login.user reducer

* Filter threads on main channel based on user setting

* Send tshow

* Add tunread

* Move unread colors logic away from UnreadBadge component so it can be used on other components

* Export UnreadBadge on index

* Add empty test

* Refactor

* Update tests

* Lint

* Thread unread user and group on RoomItem

* Thread badge working

* Started ThreadMessagesView.Item

* Fix separator

* Reactivity working

* Lint

* custom emojis aren't necessary

* Basic filter layout

* Filtering layout

* Refactor

* apply filter

* DropdownItemHeader

* default all

* few fixes

* No data found

* Fixes list performance issues

* Use locale on date formats

* Fixed minor styles

* Thread badge

* Refactor getBadgeColor

* Fix send to channel background color

* starting search threads

* Fix lint and tests

* Bump to 4.12.0 just for testing :)

* Search input layout

* query

* starting threads header

* fix unnecessary tlm on tmid messages

* Fix thread header

* lint

* Fix thread header on ShareView

* Add e2e tests

* Fix subscriptions sort

* Update stories and minor fixes

* Fix button sizes on Messagebox

* Remove comment

* Unnecessary conditional

* Add showMessageInMainThread to user collection

* Fix thread header

* Fix thread messages not working on tablet

* Reset Messagebox.tshow after sending a message

* Allow to send to channel when replying to a thread from main channel

* Unnecessary theme prop

* Address comments

* Remove re-render

* Fix scroll indicator bug

* Fix style

* Minor i18n fix

* Fix dropdown height

* I18n ptbr

* I18n
2020-10-30 14:35:07 -03:00
Diego Mello 52850cbccc
[IMPROVEMENT] List Component (#2506)
* List.Item

* section

* Start removing theme as prop

* Remove StatusBar theme prop

* SafeAreaView theme prop

* Minor fixes

* List.Container

* Add translateTitle and translateSubtitle props

* Storybook

* Show action indicator

* Header

* Info

* Theme stories

* FlatList

* DisplayName

* Fix settings

* FlatList tweaks

* ThemeView

* Screen Lock Config

* DefaultBrowserView

* PickerView and User Prefs

* Notification Prefs

* StatusView

* Auto Translate

* InviteUsersEdit

* Visitor

* Minor fixes

* Remove Separator

* Remove iteminfo

* Font scale

* Legal

* Jitsi and e2e

* Block

* search, star, etc

* auto translate and notifications

* RoomInfo

* Refactor RoomActions

* lint

* Remove DisclosureIndicator

* padding horizontal 12

* Detox

* Tests

* Address review comments

* Fix vertical scroll

Co-authored-by: Djorkaeff Alexandre <djorkaeff.unb@gmail.com>
2020-10-30 10:59:44 -03:00
Ezequiel de Oliveira d37678b354
[NEW] Show server history (#2421)
* Add dropdown

Signed-off-by: Ezequiel De Oliveira <ezequiel1de1oliveira@gmail.com>

* Adding new table to serverSchema

Signed-off-by: Ezequiel De Oliveira <ezequiel1de1oliveira@gmail.com>

* Saving if not exists

Signed-off-by: Ezequiel De Oliveira <ezequiel1de1oliveira@gmail.com>

* list of visited servers finished

Signed-off-by: Ezequiel De Oliveira <ezequiel1de1oliveira@gmail.com>

* Fix lint

Signed-off-by: Ezequiel De Oliveira <ezequiel1de1oliveira@gmail.com>

* Rename ServerLinks to ServersHistory

* Refactor

* Save username

* Sort servers desc

* ServerInput

* Item

* Refactor

* Layout tweaks

* Layout

* query by text

* Small refactor

* Redirecting to login

* Save username for oauth

* Fix keyboard persist

* Add tests

* Unnecessary yield

* Stop rendering FlatList logic when there's no servers on history

* Dismiss keyboard and autocomplete when tapped outside server TextInput

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-09-11 14:10:16 -03:00
Djorkaeff Alexandre 3c9017a62d
[NEW] E2E Encryption (#2394)
* Add E2EKey to Subscription Model

* Install react-native-simple-crypto

* Install bytebuffer

* Add translations

* CreateChannel Encrypted toggle

* Request E2E_Enabled setting

* Add some E2E API methods

* POC E2E Encryption

* Garbage remove

* Remove keys cleaner

* Android cast JWK -> PKCS1

* Initialize E2E when Login Success

* Add some translations

* Add e2e property to Message model

* Send Encrypted messages

* (iOS) PKCS1 -> JWK & e2e.setUserPublicAndPrivateKeys

* (Android) PKCS1 -> JWK & e2e.setUserPublicAndPrivateKeys

* Create an encrypted channel

* Fix app crashing on RoomsList

* Create room key

* Set Room E2E Key (Android)

* Edit room encrypted

* Show encrypted icon on messages

* logEvents

* Decrypt pending subscriptions & messages

* Handle user cancel e2e password entry

* E2ESavePasswordView

* Update Snapshot

* Add encrypted props to message on Send

* Thread messages encryption

* E2E -> Encryption

* Share Extension: Share encrypted text

* (POC) Search messages on Encrypted room

* Provide room key to new users

* Request roomKey on stream-notify-room-users

* Add e2eKeyId to Room Model

* (WIP) E2E Encryption Screens

* Remove encryption subscription file

* Move E2E_Enable to Server Model

* Encryption List Banner

* Move Encryption init to Sagas

* Show banner only when enabled

* Use RocketChat/react-native-simple-crypto

* Search on WM only when is an Encrypted channel

* (WIP) Encryption Banner

* Encryption banner

* Patch -> Fork

* Improve send encrypted message

* Update simple-crypto

* Not decrypt already decrypted messages

* Add comments

* Change eslint disable to inline

* Improve code

* Remove comment

* Some fixes

* (WIP) Encryption Screens

* Improve sub find

* Resend an encrypted message

* Fix comment

* Code improvements

* Hide e2e buttons on features if it is not enabled

* InApp notifications of a encrypted room

* Encryption stop logic

* Edit encrypted message

* DB batch on decryptPending

* Encryption ready client

* Comments

* Handle getRoomInstance errors

* Multiple messages decrypt

* Remove unnecessary try/catch

* Fix decrypt all messages history

* Just add a questionmark

* Fix some subscriptions missing decrypt

* Disable request key logic

* Fix unicode emojis

* Fix e2ekey request

* roomId -> subscription

* Decrypt subscription after merge

* E2ERoom -> EncryptionRoom

* Fix infinite loading

* Handle import key errors

* Handle request key errors

* Move e2eRequestRoomKey to Rocket.Chat

* WIP handshake when key should be requested

* Add search messages explanation

* Remove some TODO and update comments

* Improvements

* Dont show message hash to user

* Handle key request & prevent multiple calls

* Request E2EKey on decryptSubscription that doesn't exists on database yet

* Insert decrypted subscription

* Fix crash after login

* Decrypt sub when receive the key

* Decrypt pending messages of a room

* Encrypted as a switch

* Buffer to Base64 URI Safe

* Add a relevant comment

* Prevent import key without a privateKey

* Prevent create a new instance when client is not ready

* Update simple-crypto & remove replace trick

* More comments

* Remove useless comment

* Remove useless try/catch

* I18n all E2E screens

* E2ESavePassword -> E2ESaveYourPassword

* Prevent multiple views on message when is not encrypted

* Fix encryption toggle not working sometimes

* follow some suggestions

* dont rotate icons

* remove unnecessary condition

* remove unreachable event

* create channel comment

* disable no-bitwise rule for entire file

* loadKeys -> persistKeys

* getMasterKey -> generateMasterKey

* explicit difference between E2EKey & e2eKeyId

* roomId -> rid

* group columns

* Remove server selector

* missing log events

* remove comment

* use stored public key

* update simple-crypto & remove base64-js patch

* add some logs

* remove unreachable condition

* log errors

* handle errors on provide key directly on subscription

* Downgrade RocketChat/react-native-simple-crypto

* improve get room instance

* migration of older apps

* check encrypted status before send a message

* wait client ready

* use our own base64-js

* add more jest tests

* explain return

* remove unncessary stop

* thrown error to caller

* remove superfluous checks

* use Encryption property

* change ready state logic

* ready -> establishing

* encryption.room -> encryptionRoom

* EncryptionRoom -> Room

* add documentation

* wait establishing before provide a room key

* remove superfluous condition

* improve error handling logic

* fallback e2ekey set

* remove no longer necessary check

* remove e.g.

* improve getRoomInstance

* import from index

* use batch

* fix a comment

* decrypt tmsg

* dont show hash when message is encrypted

* Fix detox

* Apply suggestions from code review

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-09-11 11:31:38 -03:00
Diego Mello 1d38ff0831
[FIX] Detox tests (#2433)
* Spotlight issues

* Fix room tests

* Fix roomactions tests
2020-08-26 16:28:16 -03:00
Diego Mello 866bc227bf
Update readme (#2381) 2020-08-07 11:15:06 -03:00
Dan Caseley 3cc4b51258
[TESTS] Stabilise Room Actions test (#2333)
* Stabilise Room Actions test

* Fix Create Room test

* Be more tolerant of slow starting apps in CI

* Be more tolerant of slow running apps in CI

* Switch visibility checks ti stabilise Room Create test in CI

* Move slow simulator readiness waiting to initial navigateToX methods rather than repeatedly in tests without description of purpose
2020-07-26 11:28:48 -03:00
Dan Caseley b4e353c3d3
[TESTS] Fix some simple text (#2332)
* Clearer infrastructure wait message

* Use a generic mailbox rather than spamming Diego

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-07-24 16:19:30 -03:00
Dan Caseley df6c2c5424
[TESTS] Idempotence for e2e tests (#2308)
* Idempotence for Assorted

* Idempotence for Onboarding

* Idempotence for Rooms

* Remove redundant expects

* Fixes and improvements

* Remove unneeded sleeps

* Make stable following merge

* Try solving early taps without long sleep

Try solving early taps without long sleep (cont)

Temporary CircleCI hack for quicker testing

Add screenshots to CircleCI for failed tests

Try solving early taps without long sleep (cont. 2)

Revert "Temporary CircleCI hack for quicker testing"

This reverts commit 4abef3a5827910c05b12ac8b8380275b60e8af4f.

* Fix flaky test with a fluent wait on the tap

* Add some new sleeps to workaround #2324

* Add test artifacts to gitignore

* More longpress for dodgy taps, wait for pin response

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-07-22 13:32:21 -03:00
Dan Caseley 97cd2235df
[CHORE] Consistent Rocket.Chat Branding (#2293)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-07-15 13:57:36 -03:00
Dan Caseley 3f83daa31a
[TESTS] Test in docker (#2290)
* Add docker env with orchestration

* Update detox, update mocha config format

* One simulator at a time - mocha won't run parallel

* Docker runner, with test changes to match RC data

* Better error trapping in infrastructure control script

* Swap user provisioning from Mongo to RC API to work against existing servers

* Add docker to e2e readme

* Stop using example.com for emails

* Default detox to the tests directory

* Add working configs for both run scenarios

* Add some optional forcing of data.js version for Docker
2020-07-15 13:28:34 -03:00
Diego Mello 5834ab5e22
[IMPROVEMENT] Unified header UX (#2234)
* Change drawer icon

* Removed iOS variation

* Patch to react-navigation-header-buttons... easier to patch then to overwrite its behaviour :(

* Correctly position title

* Header subtitle

* Layout

* Alignment

* RoomView header

* Renamed RoomHeaderLeft to LeftButtons

* RoomView back button

* Search icon on RoomView

* Refactor

* Fix header on tablet

* Fix search messages close button on tablet

* Search key command

* Network status on RoomView header subtitle

* Update tests

* Scale content

* SearchBox cancel color
2020-07-06 17:56:28 -03:00
Djorkaeff Alexandre 893acdcd3a
[NEW] Action Sheet (#2114)
* [WIP] New Action Sheet

* [NEW] Header Indicator

* [IMPROVEMENT] Header Logic

* [NEW] Use EventEmitter to show ActionSheet for while

* [FIX] Animation

* [IMPROVEMENT] Use provider

* [FIX] Add callback

* [FIX] Message Actions

* [FIX] Add MessageActions icons

* [NEW] MessageErrorActions

* [IMPROVEMENT] OnClose

* [FIX] Adjust height

* [FIX] Close/Reopen

* [CHORE] Remove react-native-action-sheet

* [CHORE] Move ActionSheet

* [FIX] Reply Message

* [IMPROVEMENT] Hide ActionSheet logic

* [WIP] Custom MessageActions Header

* [IMPROVEMENT] MessageActions Header

* [IMPROVEMENT] Enable Scroll

* [FIX] Scroll on Android

* Move to react-native-scroll-bottom-sheet

* Stash

* Refactor actions

* Revert some changes

* Trying react-native-modalize

* Back to HOC

* ActionSheet style

* HOC Header

* Reaction actionSheet

* Fix messageBox actions

* Fix add reaction

* Change to flatListProps

* fix modalize android scroll

* Use react-native-scroll-bottom-sheet

* [NEW] BottomSheet dismissable & [FIX] Android not opening

* [NEW] Show emojis based on screen width

* [WIP] Adjust to content height

* [IMPROVEMENT] Responsible

* [IMPROVEMENT] Use alert instead actionSheet at NewServerView

* [FIX] Handle tablet cases

* [IMPROVEMENT] Remove actionSheet of RoomMembersView

* [IMPROVEMENT] Min snap distance when its portrait

* [CHORE] Remove unused Components

* [IMPROVEMENT] Remove duplicated add-reaction

* [IMPROVEMENT] Refactor Icon Package

* [IMPROVEMENT] Use new icons

* [FIX] Select message at MessageActions before getOptions

* [FIX] Custom header height

* [CHORE] Remove patch & [FIX] Tablet bottom sheet

* [FIX] Use ListItem height to BottomSheet Height

* Some fixes

* [FIX] Custom MessageActions header

* [FIX] Android height adjust

* [IMPROVEMENT] Item touchable & [FIX] Respect pin permission

* [IMPROVEMENT] More than one snap point

* some size fixes

* improve code

* hide horizontal scroll indicator

* [FIX] Focus MessageBox on edit message

* [FIX] Ripple color

* [IMPROVEMENT] Backdrop must keep same opacity after 50% of the screen

* [TEST] Change animation config

* [IMPROVEMENT] BackHandler should close the ActionSheet

* [CHORE] Add react-native-safe-area-context

* [FIX] Provide a bottom padding at notch devices

* [IMPROVEMENT] Improve backdrop input/output range

* [FIX] Weird Android Snap behavior

* [PATCH] React-native-scroll-bottom-sheet

* [CI] Re-run build

* [FIX] Landscape android

* [IMPROVEMENT] Cover 50% of the screen at the landscape mode

* [FIX] Adjust emoji content to width size

* [IMPROVEMENT] Use hooks library

* [IMPROVEMENT] Close the actionSheet when orientation change

* deactivate safe-area-context for while

* [REVERT] Re-add react-native-safe-area-context (3.0.2)

* [IMPROVEMENT] Use focused background

* [TESTS] E2E Tests updated to new BottomSheet

* [NEW] Add cancel button

* [FIX] Cancel button at android

* [IMPROVEMENT] Use cancelable bottom sheet at room members view

* [IMPROVEMENT] Use better function names

* [IMPROVEMENT] Use getItemLayout

* [FIX][TEMP] Animation

* Review

* Build

* Header keyExtractor

* Rename function

* Tweak animation

* Refactoring

* useTheme

* Refactoring

* TestIDs

* Refactor

* Remove old lib

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-06-15 16:35:45 -03:00
Diego Mello 98ed84ba5c
[CHORE] Update react-navigation to v5 (#2154)
* react-navigation v5 installed

* compiling

* Outside working

* InsideStack compiling

* Switch stack

* Starting room

* RoomView header

* SafeAreaView

* Slide from right stack animation

* stash

* Fix params

* Create channel

* inapp notification

* Custom status

* Add server working

* Refactor appStart

* Attachment

* in-app notification

* AuthLoadingView

* Remove compat

* Navigation

* Outside animations

* Fix new server icon

* block modal

* AttachmentView header

* Remove unnecessary code

* SelectedUsersView header

* StatusView

* CreateDiscussionView

* RoomInfoView

* RoomInfoEditView style

* RoomMembersView

* RoomsListView header

* RoomView header

* Share extension

* getParam

* Focus/blur

* Trying to fix inapp

* Lint

* Simpler app container

* Update libs

* Revert "Simpler app container"

This reverts commit 1e49d80bb4.

* Load messages faster

* Fix safearea on ReactionsModal

* Update safe area to v3

* lint

* Fix transition

* stash - drawer replace working

* stash - modal nav

* RoomActionsView as tablet modal

* RoomStack

* Stop showing RoomView header when there's no room

* Custom Header and different navigation based on stack

* Refactor setHeader

* MasterDetailContext

* RoomView header

* Fix isMasterDetail rule

* KeyCommands kind of working

* Create channel on tablet

* RoomView sCU

* Remove withSplit

* Settings opening as modal

* Settings

* StatusView headerLeft

* Admin panel

* TwoFactor style

* DirectoryView

* ServerDropdown and SortDropdown animations

* ThreadMessagesView

* Navigate to empty RoomView on server switch when in master detail

* ProfileView header

* Fix navigation issues

* Nav to any room info on tablet

* Room info

* Refactoring

* Fix rooms search

* Roomslist commands

* SearchMessagesView close modal

* Key commands

* Fix undefined subscription

* Disallow navigate to focused room

* isFocused state on RoomsListView

* Blur text inputs when focus is lost

* Replace animation

* Default nav theme

* Refactoring

* Always open Attachment with close modal button

* ModalContainer backdrop following themes

* Screen tracking

* Refactor get active route for in-app notification

* Only mark room as focused when in master detail layout

* Lint

* Open modals as fade from bottom on Android

* typo

* Fixing tests

* Fix in-app update

* Fixing goRoom issues

* Refactor stack names

* Fix unreadsCount

* Fix stack

* Fix header animation

* Refactor ShareNavigation

* Refactor navigation theme

* Make sure title is set

* Fix create discussion navigation

* Remove unused variable

* Create discussions from actions fixed

* Layout animation

* Screen lock on share extension

* Unnecessary change

* Admin border

* Set header after state callback

* Fix key commands on outside stack

* Fix back button pressed

* Remove layout animations from Android

* Tweak animations on Android

* Disable swipe gesture to open drawer

* Fix current item on RoomsListView

* Fix add server

* Fix drawer

* Fix broadcast

* LayoutAnimation instead of Transitions

* Fix onboarding back press

* Fix assorted tests

* Create discussion fix

* RoomInfoView header

* Drawer active item
2020-06-15 11:00:46 -03:00
Dan Caseley 1fa1ddd89f
Markdown linting for e2e README (#2173)
* Markdown linting for e2e README

* Running a subset of tests
2020-06-09 16:01:06 -03:00
Diego Mello d1e751bf12
[TESTS] Update and separate E2E tests (#2126)
* Tests passing until roomslist

* create room

* roominfo

* change server

* broadcast

* profile

* custom status

* forgot password

* working

* room and onboarding

* Tests separated

* config.yml refactor

* Revert "config.yml refactor"

This reverts commit 0e984d3029.

* CI

* lint

* CI refactor

* Onboarding tests

* npx detox

* Add all tests

* Save brew cache

* mac-env executor

* detox-test command

* Update readme

* Remove folder
2020-05-20 13:33:40 -03:00
Djorkaeff Alexandre d8c8817f04
[NEW] Custom Status (#1811)
* [NEW] Custom Status

* [FIX] Subscribe to changes

* [FIX] Improve code using Banner component

* [IMPROVEMENT] Toggle modal

* [NEW] Edit custom status from Sidebar

* [FIX] Modal when tablet

* [FIX] Styles

* [FIX] Switch to react-native-promp-android

* [FIX] Custom Status UI

* [TESTS] E2E Custom Status

* Fix banner

* Fix banner

* Fix subtitle

* status text

* Fix topic header

* Fix RoomActionsView topic

* Fix header alignment on Android

* [FIX] RoomInfo crashes when without statusText

* [FIX] Use users.setStatus

* [FIX] Remove customStatus of ProfileView

* [FIX] Room View Thread Header

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-03-30 17:19:01 -03:00
Diego Mello 512ffe4990
[REGRESSION] Room View header title (#1827)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-03-05 11:35:05 -03:00
Diego Mello 005e1ac46b
[FIX] Detox tests (#1790) 2020-03-03 17:27:38 -03:00
Djorkaeff Alexandre c583e0c8f5
[IMPROVEMENT] Remove useMarkdown (#1774)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-02-27 15:34:20 -03:00
Djorkaeff Alexandre 99aea22579 [NEW] Jitsi integration (#1196)
* Stash

* Rooms list listing :)

* Animated set state

* Search working

* Fix load rooms on login

* stash db class

* set active db with path

* Remove db on logout

* stash

* Created updateMessages

* Inserting/updating threads

* Persisting thread messages

* Removed unused list

* Loading messages from watermelon

* Debounce updates and rerender message

* optional fields

* Fix realm conflict issues

* Fix some render issues

* stash

* List mount

* stash

* fix message id

* Fix tmsg

* - Save subscription.rid as id on watermelon and _id as _id
- Send room as param to room view

* Throttle room updates

* stash

* comment removeClippedSubviews

* Fetch thread name

* try/catch updateMessages

* Show loading while RoomView.init is still running

* stash

* Fix updateMessages

* Threads

* Delete message

* Permalink

* Pin

* Star

* Report

* MessageActions refactor

* Edit message

* Reply message

* Add reaction

* Auto translate

* Fix connection issues

* Mark message as error if something happened on the call

* Error actions

* get custom emoji

* Always run console.log when __DEV__

* Try to create serversDB

* Don't call updateMessages. Execute that entire logic for one message id instead.

* Refactor update messages

* ServersDB User [Realm -> Watermelon]

* Fix models

* Custom emojis

* Custom emojis on emoji picker

* Frequently used emojis

* Fix add reaction on message

* stash

* Fix

* Read messages

* Fix thread

* Fetch thread header

* Follow/unfollow thread

* Fix thread

* Upload file

* Thread tweak

* Realm -> Watermelon [Share Extension]

* Add RoomsUpdatedAt to Servers Table

* Settings

* Settings

* Fix logout

* SendFileMessage ServersDB

* ServersDB on serverDropdown

* Remove serversDB from Realm

* Load thread messages

* Delete message

* Improve getSettings

* Improve

* Remove subscription

* Remove update

* Update room via socket

* Small refactor

* Fix logout and improve migration

* Refactor updateMessages

* Improve migration

* Remove unnecessary update

* Revert remove runAfterInteractions

* Fix serverDropdown

* Fix merge

* Init room actions Watermelon

* Room actions Watermelon

* Remove realm on room members

* Room swipe -> Watermelon

* Fix hideChannel

* Get roles watermelon

* Get permissions watermelon

* Users typing + memory db

* Auto translate watermelon

* New Message View

* Selected Users View

* try/catch

* Get Slash Commands watermelon

* Slash Commands message box

* Custom emojis message box

* Get rooms message box

* Room info view

* Room info edit

* Save active users

* Small refactor

* Message Actions

* hasPermission await

* last hasPermission fix

* Active users on redux

* Add user roles

* Users typing on redux and remove memory db

* Fix saga delay

* Fix few issues

* Fix slash commands preview

* Draft message

* Add muted

* Unread count watermelon

* Remove realm

* Fiz RoomItem rerenders

* Remove realm config

* Rerender status update on RoomItem

* Refactor RoomsListView

* Fix load missed messages

* Fix room update

* Message refactor

* Fixing lint

* Jitsi config (iOS)

* removeClippedSubviews on iOS only

* Added few interaction managers

* Create jitsiBaseURL

* Call buttons

* Fix few rerenders

* Fix RoomItem status typo

* Fix RoomView.SCU

* Fix broadcast

* Fix user status on RoomActionsView

* Jitsi config (Android)

* Fix RocketChat.hasPermission

* Fix database inconsistencies

* Fix few update issues

* Add rxjs and remove with observables

* Fix tests

* Remove subscriptions

* Fix RoomsListView SCU

* Change database structure and set all schemas to 1

* Fix RoomsListView search

* Call Jitsi method

* Create onlyAudio option (iOS)

* Create onlyAudio option (Android)

* Fixed errors, removed rerenders and added animation

* Fixed a few errors

* Fix lint

* Fix issues caught by LGTM

* fix ios build

* Revert patch

* jitsiTimeout

* Self-builded Android SDK

* Fix load unjoined channel messages

* Log on database path on startup

* Fix join channel

* Remove react-native-realm-path

* Set user status on login.user reducer

* Fix status not rendering on RoomsListView

* Fix few reducers

* Fix users going offline

* Never use "watermelon" term directly. Replaced by "database"

* Fix jitsiTimeout

* Fix custom emoji

* Fix duplicated call messsage

* Creating room from app must update roomUpdatedAt

* Log subscribeRoom start

* Fix room subscribe right after creating a DM

* Fix jest

* Move self-builded sdk to node_modules

* Refactor is read only on messages actions

* Fix typo

* Fix typo

* Review

* Fix schema

* Fix muted & freq emoji & unpin & unstar

* Remove throttleTime to room info & fix reset on edit room

* Fix openServerDropdown spec & Fix unarchive

* Fix MessageAction

* Refactor RoomInfoEditView

* Remove unnecessary condition

* Remove unnecessary condition

* Remove unnecessary condition

* Remove get database

* Rename Command.js to SlashCommand.js

* Create sanitizer util

* Fix indentation

* Create subscription.t index

* Refactor queries on RoomsListView

* Create subscription.name index

* Fix getPermissions

* Fix indentation

* Add missing await

* Fix rocketchat.hasPermission

* Unnecessary change

* Star, pin e delete message refactored

* Refactor customEmojis reducer

* Remove code

* Remove logs

* Remove throttle

* Call this.init on foreground focus on RoomView

* Bump servers schema migration

* Always mark message as sent after a success

* Fetch only messages needed on updateMessages

* Just leave a comment for now

* Fetch only subscriptions returned by fetch

* Fix send message

* Create migration - jitsi_timeout

* Fixes & Update e2e tests

* Add translations pt-br

* Bind callJitsi on RocketChat

* Remove unnecessary mocks

* Remove listeners when call finished

* Use gradlew instead self-builded sdk

* Fix lastmessage call username

* Add react-native-background-timer

* Fix background interval

* Remove unnecessary timeout

* Clear timeout in case there's one active

* Add catch to method call
2019-09-18 14:32:12 -03:00
Diego Mello 9ba37107c7
[CHORE] Migrate to Watermelon (#1171)
* Install

* Create subscriptions

* Subscription observing and sorting

* Saving last message

* Stash

* Stash

* stash

* Stash

* Rooms list listing :)

* Animated set state

* Search working

* Fix load rooms on login

* stash db class

* set active db with path

* Remove db on logout

* stash

* Created updateMessages

* Inserting/updating threads

* Persisting thread messages

* Removed unused list

* Loading messages from watermelon

* Debounce updates and rerender message

* optional fields

* Fix realm conflict issues

* Fix some render issues

* stash

* List mount

* stash

* fix message id

* Fix tmsg

* - Save subscription.rid as id on watermelon and _id as _id
- Send room as param to room view

* Throttle room updates

* stash

* comment removeClippedSubviews

* Fetch thread name

* try/catch updateMessages

* Show loading while RoomView.init is still running

* stash

* Fix updateMessages

* Threads

* Delete message

* Permalink

* Pin

* Star

* Report

* MessageActions refactor

* Edit message

* Reply message

* Add reaction

* Auto translate

* Fix connection issues

* Mark message as error if something happened on the call

* Error actions

* get custom emoji

* Always run console.log when __DEV__

* Try to create serversDB

* Don't call updateMessages. Execute that entire logic for one message id instead.

* Refactor update messages

* ServersDB User [Realm -> Watermelon]

* Fix models

* Custom emojis

* Custom emojis on emoji picker

* Frequently used emojis

* Fix add reaction on message

* stash

* Fix

* Read messages

* Fix thread

* Fetch thread header

* Follow/unfollow thread

* Fix thread

* Upload file

* Thread tweak

* Realm -> Watermelon [Share Extension]

* Add RoomsUpdatedAt to Servers Table

* Settings

* Settings

* Fix logout

* SendFileMessage ServersDB

* ServersDB on serverDropdown

* Remove serversDB from Realm

* Load thread messages

* Delete message

* Improve getSettings

* Improve

* Remove subscription

* Remove update

* Update room via socket

* Small refactor

* Fix logout and improve migration

* Refactor updateMessages

* Improve migration

* Remove unnecessary update

* Revert remove runAfterInteractions

* Fix serverDropdown

* Fix merge

* Init room actions Watermelon

* Room actions Watermelon

* Remove realm on room members

* Room swipe -> Watermelon

* Fix hideChannel

* Get roles watermelon

* Get permissions watermelon

* Users typing + memory db

* Auto translate watermelon

* New Message View

* Selected Users View

* try/catch

* Get Slash Commands watermelon

* Slash Commands message box

* Custom emojis message box

* Get rooms message box

* Room info view

* Room info edit

* Save active users

* Small refactor

* Message Actions

* hasPermission await

* last hasPermission fix

* Active users on redux

* Add user roles

* Users typing on redux and remove memory db

* Fix saga delay

* Fix few issues

* Fix slash commands preview

* Draft message

* Add muted

* Unread count watermelon

* Remove realm

* Fiz RoomItem rerenders

* Remove realm config

* Rerender status update on RoomItem

* Refactor RoomsListView

* Fix load missed messages

* Fix room update

* Message refactor

* Fixing lint

* removeClippedSubviews on iOS only

* Added few interaction managers

* Fix few rerenders

* Fix RoomItem status typo

* Fix RoomView.SCU

* Fix broadcast

* Fix user status on RoomActionsView

* Fix RocketChat.hasPermission

* Fix database inconsistencies

* Fix few update issues

* Add rxjs and remove with observables

* Fix tests

* Remove subscriptions

* Fix RoomsListView SCU

* Change database structure and set all schemas to 1

* Fix RoomsListView search

* Fixed errors, removed rerenders and added animation

* Fixed a few errors

* Fix lint

* Fix issues caught by LGTM

* fix ios build

* Fix load unjoined channel messages

* Log on database path on startup

* Fix join channel

* Remove react-native-realm-path

* Set user status on login.user reducer

* Fix status not rendering on RoomsListView

* Fix few reducers

* Fix users going offline

* Never use "watermelon" term directly. Replaced by "database"

* Fix custom emoji

* Creating room from app must update roomUpdatedAt

* Log subscribeRoom start

* Fix room subscribe right after creating a DM

* Refactor is read only on messages actions

* Fix typo

* Fix typo

* Review

* Fix schema

* Fix muted & freq emoji & unpin & unstar

* Remove throttleTime to room info & fix reset on edit room

* Fix openServerDropdown spec & Fix unarchive

* Fix MessageAction

* Refactor RoomInfoEditView

* Remove unnecessary condition

* Remove unnecessary condition

* Remove unnecessary condition

* Remove get database

* Rename Command.js to SlashCommand.js

* Create sanitizer util

* Fix indentation

* Create subscription.t index

* Refactor queries on RoomsListView

* Create subscription.name index

* Fix getPermissions

* Fix indentation

* Add missing await

* Fix rocketchat.hasPermission

* Unnecessary change

* Star, pin e delete message refactored

* Refactor customEmojis reducer

* Remove code

* Remove logs

* Remove throttle

* Call this.init on foreground focus on RoomView

* Bump servers schema migration

* Always mark message as sent after a success

* Fetch only messages needed on updateMessages

* Just leave a comment for now

* Fetch only subscriptions returned by fetch

* Set room param on RoomView header in find room

* Update kotlin

* Fix auto translate constructor

* Fix few setState on constructor

* Fix empty room image blinking while mounting

* Improve fetch/persist execution for custom emojis, permissions and settings

* Query only user tapped on RoomMembersView

* Fix typo on canOpenRoom
2019-09-16 17:26:32 -03:00
pranavpandey1998official 86a9d405cc [IMPROVEMENT] Notification Preference (#1105) 2019-08-23 13:24:15 -03:00
pranavpandey1998official c14714f16f [NEW] Settings view (#900)
* new settings view

* fix eslint

* fix eslint

* fix eslint

* fix eslint

* fix eslint

* fix eslint

* fix eslint

* fix eslint

* fix eslint

* fix eslint

* fix eslint

* eslint fixed all bugs and setup on my device

* move version from sidebar to settingsView

* add server Version not hard coded

* goto root stack after change language

* support RTL

* fix the ui of last section

* fixed bugs done requested changes

* added actions for contact us and license

* done requested changes

* removed verticle scroll indicator

* removed default export of device info

* fixed separator styling

* refactor Items in settings view

* changed language view

* change activeOpacity

* done requested changes

* fixed lint

* changed layout

* added test

* fix bug

* fix bug

* added e2e tests

* undone unnessary changes

* undone unnessary changes

* removed firebase

* Comment slash e2e tests

* Refactor Settings

* Refactor LanguageView

* Separator

* Unified styles

* fix indentation
2019-06-11 11:01:40 -03:00
pranavpandey1998official 82afb63327 [NEW] Slash commands (#886)
* setup database

* added getSlashCommands to loginSucess

* added slash command first prototype

* added preview feture for commands that have preview enabled

* address requested changes

* added preview options for other types of files too

* address changes

* done requested changes

* undone un-nessary changes

* done suggested changes

* fixed lint

* done requested changes

* fixed lint

* fix e2e
2019-06-10 15:36:56 -03:00
IlarionHalushka f7a5db0559 [CHORE] Make e2e pass on CircleCI (#933)
* add README.md for running ios detox e2e tests

* uncomment circle ci e2e tests

* update e2e credentials and server url

* update e2e credentials and docs

* comment lastMessage prop on RoomListView->RoomItem (research realm bug)

* add sleep before search in joinpublic room test (research realm bug)

* use detox.launchApp instead of detox.reloadRN, (joinpuclicroom test)

* make e2e job run only on approval; update docs with PR review comments

* cache node_modules on CI jobs: e2e tests, ios build

* fix circle CI caching node_modules

* fix circle CI caching node_modules

* revert changes connected to caching node_modules

* remove unnecessary changes

* revert email value to diego.mello

* add stopTrackingMention when input becomes empty in messagebox

* add Android run instruction to readme

* fix spacing
2019-06-03 16:20:36 -03:00
Djorkaeff Alexandre 29286e98a8 [IMPROVEMENT] Share channel (#908)
* Generate and share permalink to rooms

* Create constant to share type

* Fix unnecessary await

* Remove unnecessary test

* Revert delete e2e test
2019-05-29 18:19:12 -03:00
Diego Mello 9e4a4d2454
[CHORE] Use react-native-firebase (#928)
We need to migrate from deprecated react-native-fabric to react-native-firebase.
This PR enables following Firebase features:
* Analytics
* Crashlytics
* Performance

It also tracks screen view without the necessity of HOC.

Future work:
I won't do it in this PR because it's large enough, but we need to log more app events, like 'sent_message', 'open_admin', 'media_upload', etc.
2019-05-28 10:03:08 -03:00
Diego Mello 28628b4dba
Switch toast lib (#898)
* removed toast from ios

* changed showToast to showAlert

* removed from android

* fix lint

* conflict resolved

* fixed lint

* Fix toast position

* Change toast style

* Use followMessage from rest

* Temporary disable some visual toast tests

* Unnecessary lib version change
2019-05-15 16:33:30 -03:00
Diego Mello a243b1ccd7
Tweaks on sequential threads messages layout (#858)
* Tweaks on sequential threads messages

* Update tests

* Fix quote

* Prevent from deleting thread start message when positioned inside the thread

* Remove thread listener from RightButtons

* Fix error on thread start parse

* Stop parsing threads on render

* Check replied thread only if necessary

* Fix messages don't displaying

* Fix threads e2e

* RoomsListView.updateState slice

* Stop fetching hidden messages on threads

* Set initialNumToRender to 5
2019-05-03 10:33:38 -03:00
Diego Mello 44f3b7f1a9
Active users improvements (#855) 2019-04-29 13:03:52 -03:00
Diego Mello 5744114d7d
[FIX] Threads (#838)
Closes #826
Closes #827
Closes #828
Closes #829
Closes #830
Closes #831
Closes #832
Closes #833
2019-04-24 15:36:29 -03:00
Diego Mello 9cf81bbab9
[NEW] Threads (#798) 2019-04-17 14:01:03 -03:00
Diego Sampaio 1d9acdb700 [NEW] Discussions (#696) 2019-04-08 09:35:28 -03:00
Diego Mello fd5fbe47e8
Use FlatList in RoomView (#762) 2019-03-27 17:06:57 -03:00
Diego Mello 38dabfc9ff
Switch to react-navigation (#687) 2019-03-12 13:23:06 -03:00
Diego Mello 8f5381d770
Update React Native to 0.58.6 (#668) 2019-03-01 11:40:22 -03:00
Diego Mello f3ddf60a57
Remove drawer (#653)
* Remove drawer (layout needs to be changed in future releases, though)
* Don't navigate outside on logout if there's other logged server
* Update react-native-navigation
2019-02-27 11:26:40 -03:00
Diego Mello f065bd05f2
Allow to create empty channel (#615) 2019-02-08 14:34:01 -02:00
Diego Mello 2585038112
Update JS SDK version (#602) 2019-02-07 13:48:10 -02:00
Diego Mello d5a285f85e
Create class to manage navigation (#594)
* Add Navigation class

* Place Drawer.js logic inside of Navigation

* Load less views at startup
2019-01-31 14:08:38 -02:00
Diego Mello 754508c2d9
Update dependencies (#587) 2019-01-29 17:52:56 -02:00
Diego Mello d23c055584
Unnecessary re-renders removed (#570)
* shouldComponentUpdate

* Rooms list shouldcomponentupdate

* RoomView shouldComponentUpdate

* Messagebox and Message shouldComponentUpdate

* EmojiPicker shouldComponentUpdate

* RoomActions shouldComponentUpdate

* Room info shouldComponentUpdate

* Update RNN

* Use only one Flatlist if none group filter is selected

* Update fix

* shouldComponentUpdate

* Bug fixes

* ListView changes

* Bug fix

* render list bug fix

* Changes on public channels

* - RoomView saga leak removed
- Join room e2e tests added

* Rest versions

* Method call versions

* Min RocketChat version alert
2018-12-21 08:55:35 -02:00
Diego Mello a2821af95b
Use Rest API calls (#558) 2018-12-05 18:52:08 -02:00
Diego Mello c6fcfb63fd
[WIP] New Authentication layout (#536)
New Authentication layout
2018-11-14 19:42:03 -02:00
Diego Mello fc1796e098
[FIX] Composer composer's send icon slowness (#528) 2018-11-05 17:03:17 -02:00
Diego Mello 402403f964
Update navigation library (#501)
* v2

* Working on Android 0.57.3

* Drawer working

* Removing v1 navigator

* - Splash screen
- Icons changed

* Deeplink

* Remove EventEmitter from CreateChannelView

* Android search

* Android notifications

* OAuth

* Fix search props

* Lint and tests fixed

* Fix android build

* Improvements on iPhone X* usage

* Fix detox

* Fix android build

* Room.f added to RoomView.shouldComponentUpdate

* Animations on RoomsListView and RoomView

* Fix topbar buttons on Android
2018-10-23 18:39:48 -03:00
Diego Mello d5a4ead888
[FIX] Handle deleted messages (#466)
* [FIX] Handle deleted messages

* Fix rest error

* Fix some connection issues
2018-09-28 15:57:29 -03:00
Diego Mello 81c53acd60
Update dependencies (#431)
* Update dependencies

* Lint and test

* Added react-native fork

* rn 57

* Lint and tests updated

* Update xcode on circleci

* Use legacy build system

* Update tests
2018-09-25 16:28:42 -03:00
Diego Mello 96d0b1fcbc
[NEW] Message layout (#426)
* message container/component

* Separator component

* Reply

* Url

* tests updated

* Minor changes

* Audio component

* Broadcast button

* Minor touches

* Reply preview

* Edited

* Minor bug fixes

* - Update roadmap
- Bump version to 1.2

* Onboarding styles fix
2018-09-11 13:32:52 -03:00
Diego Mello de1a63c815
[NEW] Create channel layout (#420)
* RoomsListView layout

* Rooms list layout

* Sort component

* Header icons

* Default header colors

* Add server dropdown

* Close sort dropdown if server dropdown will open

* UserItem

* Room type icon

* Search working

* Tests updated

* Android layout

* Using realm queries instead of array iterates

* Animation duration

* Fixed render bug

* - NewMessageView
- backButtonTitle always empty
- SearchBox created

* New create channel layout

* Search refactored

* loginSuccess dismiss modal

* Tests working
2018-08-31 15:13:30 -03:00
Diego Mello dc6d60b28e
[NEW] Rooms list layout (#413)
* RoomsListView layout

* Rooms list layout

* Sort component

* Header icons

* Default header colors

* Add server dropdown

* Close sort dropdown if server dropdown will open

* UserItem

* Room type icon

* Search working

* Tests updated

* Android layout

* Using realm queries instead of array iterates

* Animation duration

* Fixed render bug
2018-08-31 13:46:33 -03:00
Diego Mello 91025e9d03 [NEW] Onboarding (#407)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->
Closes #392 

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
![aug-07-2018 17-03-50](https://user-images.githubusercontent.com/804994/43799447-f62074dc-9a63-11e8-8aac-bf2c4c5a8a2b.gif)
![aug-07-2018 17-03-35](https://user-images.githubusercontent.com/804994/43799446-f5f84a70-9a63-11e8-8947-265113ae9bf4.gif)
![aug-07-2018 17-03-13](https://user-images.githubusercontent.com/804994/43799445-f5d70ee6-9a63-11e8-94a9-f49c7d69fbba.gif)
2018-08-10 14:26:36 -03:00
Diego Mello 53ceaf858b [NEW] Room Loading(#372)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
2018-07-18 17:34:59 -03:00
Diego Mello 224c421b69 Switch push notification lib (#346)
<!-- INSTRUCTION: Keep the line below to notify all core developers about this new PR -->
@RocketChat/ReactNative

<!-- INSTRUCTION: Inform the issue number that this PR closes, or remove the line below -->
Closes #342 

<!-- INSTRUCTION: Tell us more about your PR with screen shots if you can -->
2018-07-10 10:40:32 -03:00
Diego Mello 9e4ca34a80 Settings/Permissions improvements (#325)
* Changed the way we read RocketChat settings since setting.type won't be returned from server anymore

* Permissions

* Unnecessary action sheet render
2018-06-18 10:30:36 -03:00
Diego Mello da173275ce [NEW] User Profile (#323)
* Drawer layout

* Drawer changes

* Profile

* Profile avatar

* Set language

* Tests

* Custom fields

* Readme updated

* fix invalid user muted value

* Fix for "Cannot add a child that doesn't have a YogaNode to a parent without a measure function! (Trying to add a 'RCTVirtualText' to a 'RCTView')"
2018-06-12 22:33:00 -03:00
Diego Mello da3679d46a [NEW] Drawer (#322) 2018-06-04 22:17:02 -03:00
Diego Mello 466a57e6b1 I18n (#312) 2018-06-01 14:38:13 -03:00
Diego Mello f61a57bb30 New markdown (#306)
Our current markdown is causing a lot of issues on Android devices, since it wraps everything inside a Text component.
On Android, Text doesn't support View as a child.
This PR adds react-native-markdown-renderer, that uses View as wrapper and may be better.
2018-05-29 14:09:20 -03:00
Diego Mello 061c313e3f [NEW] Broadcast channels (#301)
* Broadcast channels

* e2e tests
2018-05-24 17:17:45 -03:00
Guilherme Gazzo 182ab69d6f
Detox tests E2E (#283) 2018-05-23 10:39:18 -03:00