Commit Graph

239 Commits

Author SHA1 Message Date
Calebe Rios 20a73907ff [IMPROVEMENT] Respect "Hide counter" preference (#1306) 2019-10-28 17:04:44 -03:00
Djorkaeff Alexandre 8bffe1f28c [FIX] Invalid server version (#1319) 2019-10-28 10:37:12 -03:00
Djorkaeff Alexandre 2867f845df fix server with subpath (#1322) 2019-10-23 16:26:57 -03:00
Djorkaeff Alexandre 6df7d7b3c3 [FIX] Set User-Agent (#1318)
* Set User-Agent Fetch & Websocket & XHR

* Set User-Agent

* Custom User Agent on fetch/websocket

* Fix names

* Use DeviceInfo
2019-10-18 13:20:01 -03:00
Diego Mello 145e5c6b55
[FIX] Watermelon batches (#1277) 2019-10-08 09:36:15 -03:00
Djorkaeff Alexandre 6fd722a0d8 [FIX] Select user from native credentials (#1266) 2019-10-02 09:55:25 -03:00
Diego Mello b9485ad3f8
[FIX] Room subscription issues (#1255) 2019-09-27 17:29:25 -03:00
Diego Mello a1297d0e6c
[FIX] Update last open on message stream received (#1240) 2019-09-26 13:54:24 -03:00
Diego Mello 4388b2acb1
[FIX] Try/catch JSON.parse XHR response (#1238) 2019-09-26 13:53:04 -03:00
Diego Mello 11249f962a
Update React Native to 0.61.1 (#1236)
* Update React Native to 0.61.1

* Update patch to SSL Pinning

* Revert storybook
2019-09-26 11:59:27 -03:00
Djorkaeff Alexandre 0ff47f477a [CHORE] Update react-native-jitsi-meet (#1235) 2019-09-25 19:13:39 -03:00
Diego Mello 915d19fbe8
[FIX] Cancel upload and check failed upload (#1232) 2019-09-25 18:31:53 -03:00
Diego Mello 319ca7f044
[FIX] Unify upload check (#1229) 2019-09-24 17:16:59 -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
Djorkaeff Alexandre 2515295fc6 [NEW] Support client certificates for SSL (two-way authentication) (#1125) 2019-09-02 13:19:05 -03:00
Djorkaeff Alexandre c7791b9a38 [FIX] Fix calls to bugsnag.notify (#1165) 2019-08-30 09:43:23 -03:00
Diego Mello 0aeedbb2f2
[FIX] Unsubscribe rooms listeners on server change (#1153) 2019-08-27 14:41:07 -03:00
pranavpandey1998official 86a9d405cc [IMPROVEMENT] Notification Preference (#1105) 2019-08-23 13:24:15 -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
Filipe Brito 3a247454ca [IMPROVEMENT] Checks if custom OAuth button should be shown (#1140) 2019-08-22 16:24:27 -03:00
pranavpandey1998official 857d23ee88 [IMPROVEMENT] Tap on avatar/username/channel to show info (#1097)
* added feature to tab on mentions and avtar

* fixed lint

* removed room param from roomActionView

* removed room param from roomActionView

* Update tests
2019-08-22 15:08:07 -03:00
Diego Mello 5bb477d00e
[FIX] Handle disconnect and reconnect properly (#1131) 2019-08-14 08:16:59 -03:00
Diego Mello 047a0ddf8d
[FIX] Remove console on production builds (#1124)
* [FIX] Remove console on production builds

* Add react-native-markdown-renderer patch

* Update react-native-notifications

* Increase maxHeapSize
2019-08-13 10:03:46 -03:00
Filipe Brito e351a77a6b [NEW] CAS authentication (#1116) 2019-08-12 15:37:42 -03:00
Filipe Brito 59426f470b [NEW] SAML authentication support (#1108) 2019-08-09 14:28:46 -03:00
Johannes Buechele 6a3523d6bf [NEW] Custom OAuth (#1093) 2019-08-07 11:36:53 -03:00
Diego Mello ba232547f1
[CHORE] Update to react-native 0.60.4 (#1095)
* Update to 0.59.10

* stash

* stash

* patch RN

* Try to fix openURL

* Fix compile Share Extension

* Minor fixes

* build ios

* tracking view working and added postinstall

* SafeAreaView vertical never

* tracking view patch

* Android build working

* Android notifications working

* Lint and tests

* Fix android build

* Add tools:replace="android:appComponentFactory"

* Android build

* Update vector icons

* Update webview

* Remove jsc

* Update document picker

* Firebase

* jetify on postinstall

* Patch expo-haptics

* CI

* Migrate packages manually

* Disable ci cache

* Revert "Disable ci cache"

This reverts commit 4740d86102.

* CI

* audio

* adapter

* notifications

* Try RN directly

* Fix gradle

* Revert patches

* Restore cache

* update redux and lodash

* eslint-config-airbnb@17.1.1 eslint-plugin-jsx-a11y@6.2.3

* ejson@2.2.0 react-native-webview@6.7.0 semver@6.3.0 snyk@1.210.0

* codecov@3.5.0 eslint-plugin-react@7.14.3 eslint-plugin-react-native@3.7.0 react-dom@16.8.6

* Update react-redux and remove decorators

* Update redux-saga and reactotron libs

* Husky

* Storybook libs

* react-native-webview@6.8.0 markdown-it-flowdock@0.3.8 react-native-unimodules@0.5.3

* Removed regenerator-runtime

* react-native-picker-select

* react-navigation-header-buttons

* Remove comments

* react-native-notifications

* Fix rnn android build
2019-08-07 10:51:34 -03:00
Djorkaeff Alexandre d80dd0e2ce [FIX] Share Extension issues (#1064) 2019-07-29 13:33:28 -03:00
Djorkaeff Alexandre 18ef6c5430 [NEW] Share extension (#942) 2019-07-18 14:44:02 -03:00
Diego Mello 3619e0ab7f
[FIX] Auto-translate messages as they arrive (#1049)
* Comment removeClippedSubviews

* Comment width animation

* Remove redux from RoomItem

* Fix wrong re-render comparison

* Remove listener

* Raise minDeltaX

* memo actions

* Spring with native driver

* Refactor functions

* Fix props issues

* Remove RoomItem.height

* Long swipe

* Refactor animations

* this.rowTranslation -> this.transX

* Moved state to this

* [FIX] Auto-translate messages as they arrive
2019-07-15 13:56:52 -03:00
pranavpandey1998official 47676c2286 [NEW] Room swipe actions: mark as read/unread, hide, fav (#976)
* added unread and fav feature

* changed the layout

* fix jest

* done requested changes

* added requested changes
2019-07-01 11:20:38 -03:00
pranavpandey1998official 481458285b [IMPROVEMENT] Use Rest API for file upload (#1005)
* removed rn-fetch-blob and use native XMLHttpRequest instead

* removed unnessary changes

* fix android bug

* fix android bug

* added tmid support

* fix bug

* fixed isssue with cacel model

* fix problems with audio

* done requested changes

* fix bug with android
2019-06-28 16:07:20 -03:00
Diego Mello b3986b98b5
[NEW] Auto-translate (#1012)
* Update realm

* View original and translate working

* Read AutoTranslate_Enabled setting

* RocketChat.canAutoTranslate()

* AutoTranslateView

* Save language

* Auto-translate switch

* Translate message
2019-06-28 14:02:30 -03:00
Djorkaeff Alexandre 255ea84599 [IMPROVEMENT] Share credentials with Rocket.Chat.iOS (#982)
*  Create user table

*  Introduce user table

* 🔥 Remove unused table

*  Add userdefaults to storage data

* 💚 Fix android build

*  Get credentials from iOS native client

* 🔥 Remove unused code

*  Revert sign xcode

* 🐛 Fix first login-logout

* 🎨 Use constants to UserDefaults Keys

* 🐛 Fix clear server-user-info on logout

* 🐛 Fix filter null value

* 🚑 Remove user object in logout

*  Fix get servers from native-client

* 🚑 Fix error on change server
2019-06-26 16:50:03 -03:00
Diego Mello e2f9241040
[FIX] App hang on "updating" (#997)
* [FIX] App hang on "updating"

* Fix iOS notification tap
2019-06-26 09:33:56 -03:00
Diego Mello e52739e305
[FIX] Join discussion (#1000) 2019-06-20 16:02:50 -03:00
Diego Mello 319630949e
[FIX] Cancel ongoing tasks on server change (#984)
* Fork selectServer and loginSuccess

* Fork tasks on login

* Refactor

* Remove room sub and requests on logout

* Comment room header disabled rule

* Check server on rooms stream

* Uncomment disabled props

* Fix updating state

* Comment last fetch user presence date
2019-06-17 10:57:07 -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
Diego Mello d68eb01b82
[NEW] Read receipt (#975)
* switching to ubountu

* added read Recipt functionality to the app
fix: #542

* placed the check icon on the end of timestamp

* removed linting errors

* updating snapshots

* done requested changes

* removed width scrollView

* done required changes

* fixed linting errors

* added migrations

* resolved conflicts and done requested changes

* undone uneesasary changes

* adding migrations

* done requested changes

* Add stories and fix some issues
2019-06-10 15:36:31 -03:00
Diego Mello 467a2d4002
[NEW] In-app notification (#964)
* added Notification badge

* added notification to state

* added condition not see notification of current room

* fixed lint

* fixed some bugs

* fixed some bugs

* removed navigation prop

* fixed navigation bug

* removed unessary changes

* done requested chamges

* made separate notification for ios and android

* merged notification

* Removed unnecessary sub

* Animation

* Layout changes

* Refactor
2019-06-10 13:23:19 -03:00
Diego Mello b7e6d3615f
[NEW] Directory and Federation (#967)
* Initial

* Search working

* Refactor layout

* Layout and search working

* Navigate

* Remove inline styles and fix i18n

* Federation setting

* Missing i18n

* Fix android style

* Refactor
2019-06-10 13:22:35 -03:00
Diego Mello 3cd84a10f6
[FIX] Change server issue (#960)
* [FIX] Lazy fetch server info

* [FIX] Multiple servers issues
2019-06-05 16:11:29 -03:00
IlarionHalushka 109a247c8d [FIX] Profile update (#955) 2019-06-05 13:29:07 -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 b1eb18351f
[IMPROVEMENT] Update user presence endpoint (#924)
* [IMPROVEMENT] Update user presence endpoint

* Use `from` parameter in case of reconnection
2019-05-28 13:52:26 -03:00
Diego Mello a148e6d15d
[FIX] Analytics error events (#930) 2019-05-28 13:18:46 -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 896240457f
[IMPROVEMENT] Add toggle markdown to settings (#907)
* Add toggle markdown to settings

* Remove unused translation
2019-05-21 09:12:15 -03:00
Diego Mello 60418b75a4
Message render performance (#880)
- Refactored Message component to use React.memo and re-render only what's necessary
- Added a test mode to toggle markdown parse by long press drawer (it'll be removed in the next release)
2019-05-20 17:43:50 -03:00