AlexAlexandre
7b9f00510d
[improve] - fix the errors with auto-save
2021-08-19 21:01:17 -03:00
Diego Mello
3ef4ef5317
[NEW] Jump to message ( #3099 )
...
* Scrolling
* Add loadMore button at the end of loadMessagesForRoom
* Delete dummy item on tap
* Only insert loadMore dummy if there's more data
* load surrounding messages
* fixes and load next
* First dummy and dummy-next
* Save load next messages
* Check if message exists before fetching surroundings
* Refactoring List
* Jumping to message :)
* Showing blocking loader while scrolling/fetching message
* Check if message exists on local db before inserting dummy
* Delete dummies automatically when the message sent to updateMessages again
* Minor cleanup
* Fix scroll
* Highlight message
* Jump to bottom
* Load more on scroll
* Adding stories to LoadMore
* Refactoring
* Add loading indicator to LoadMore
* Small refactor
* Add LoadMore to threads
* getMoreMessages
* chat.getThreadMessages -> getThreadMessages
* Start jumping to threads
* Add jumpToMessageId on RoomView
* Nav to correct channel
* Fix PK issue on thread_messages
* Disable jump to thread from another room
* Fix nav to thread params
* Add navToRoom
* Refactor styles
* Test notch
* Fix Android border
* Fix thread message on title
* Fix NavBottomFAB on threads
* Minor cleanup
* Workaround for readThreads being called too often
* Lint
* Update tests
* Jump from search
* Go to threads from search
* Remove getItemLayout and rely on viewable items
* Fix load older
* stash working
* Fix infinite loading
* Lower itemVisiblePercentThreshhold to 10, so very long messages behave as viewable
* Add generateLoadMoreId util
* Minor cleanup
* Jump to message from notification/deep linking
* Add getMessageInfo
* Nav to threads from other rooms
* getThreadName
* Unnecessary logic
* getRoomInfo
* Colocate getMessageInfo closer to RoomView
* Minor cleanup
* Remove search from RoomActionsView
* Minor fix for search on not joined public channels
* Jump to any link
* Fix tablets
* Jump to message from MessagesView and other bug fixes
* Fix issue on Urls
* Adds race condition to cancel jump to message if it's stuck or after 5 seconds
* Jump from message search quote
* lint
* Stop onPress
* Small refactor on load methods
* Minor fixes for loadThreadMessages
* Minor typo
* LoadMore i18n
* Minor cleanup
2021-05-26 14:24:54 -03:00
Gung Wah
98890df773
[CHORE] Use shortcut syntax for get collections ( #2932 )
...
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-02-26 13:25:51 -03:00
Gung Wah
3a950547f3
[CHORE] Remove InteractionManager blocks ( #2906 )
...
* [FIX] Remove InteractionManager blocks
* Minor fix
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2021-02-23 15:36:20 -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
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
IlarionHalushka
59a71ffaef
[CHORE] Bugsnag logging setup ( #1145 )
...
* initial bugsnag setup
* upload sourcemaps to bugsnag during ios-build job
* fix: spacing in config.yml
* add yarn global add react-native
* add separate step: Upload sourcemaps to Bugsnag
* add brew install watchman
* install react-native-cli, remove install watchman
* upload source maps for android build
* add yarn add global react-native react-native-cli for android-build ci job
* add working_directory to android-build
* install npm i -g react-native react-native-cli
* add Install Node step to android-build job
* export path to node to bash_profile
* add step Install React Native CLI to android build job
* use yarn generate-source-maps in ci; exchange firebase log -> bugsnag log
* implement send(toggle) crash reports button
* move BUGSNAG_API_KEY to config file; remove generated source maps files
* unlink bugsnag
* add ios/Pods files connected to Bugsnag; fix ci android build job
* export firebase analytics also from /utils/log
* use `log(e)` instead of `log(error)`
* API Key changes
* pod install
* Fix iOS build
* Simulate error
* lint
* Add navigation
* Use projectRoot
* Revert project root
* - Don't run on forks
- Upload dSYMs
* Remove error sim
* Remove automatic dSYMs upload
* Remove fastlane-plugin-bugsnag
2019-08-23 10:18:47 -03:00
Diego Mello
a148e6d15d
[FIX] Analytics error events ( #930 )
2019-05-28 13:18:46 -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
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