Commit Graph

199 Commits

Author SHA1 Message Date
Neil Agarwal 2ec2a52f45
[IMPROVEMENT] Expo-av audio recorder (#2195)
* [NEW] MessageBox: Expo-av audio recorder

* Refactor MessageBox to accommodate recording button even when recording
* Rename Recording.js -> RecordAudio.js as we could implement video recording in the future

* RecordAudio: Introduce cancel and send buttons

* RecordAudio: Introduce recorderBusy state, refactor MessageBox, remove useless SafeAreaView

* RecordAudio: Better audio quality 🎉, stop recording on unmount

* RecordAudio: Use FileSystem from expo-file-system instead of RNFetchBlob

* chore: flush out react-native-audio

* fix(MessageBox): bring back some missed styles during refactor

* refactor(RecordAudio): use class component

* refactor(RecordAudio): recorder busy to class property, styling changes

* recorder initialisation changes

* fix(RecordAudio): missing await in isRecordingPermissionGranted

* fix(RecordAudio): set isRecording = false on cancel/finish, refactor perms

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-07-06 16:23:46 -03:00
Djorkaeff Alexandre ff74f6ec9e
[NEW] Omnichannel Status Toggle (#2217)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-06-26 17:45:21 -03:00
Djorkaeff Alexandre 07e9bcb776
[NEW] Send multiple attachments (#2162)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-06-26 17:22:56 -03:00
Ezequiel de Oliveira 36b37eb747
[CHORE] Create DimensionsContext (#2098)
Signed-off-by: Ezequiel De Oliveira <ezequiel1de1oliveira@gmail.com>

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-06-17 14:35:58 -03:00
Ezequiel de Oliveira 2632ef50f5
[IMPROVEMENT] Use react-native-notifier for in-app notifications (#2139)
Signed-off-by: Ezequiel De Oliveira <ezequiel1de1oliveira@gmail.com>

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-06-16 17:32:30 -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
Diego Mello ec7417c29c
[CHORE] Update WatermelonDB to 0.16.2 (#2166)
* [CHORE] Update WatermelonDB to 0.16.2

* Patch watermelon
2020-06-05 12:58:14 -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
Diego Mello bfce5c8c87
[FIX] Android build (#2094) 2020-05-08 16:07:13 -03:00
Djorkaeff Alexandre 9e89316e2a
[NEW] Livechat (#2004)
* [WIP][NEW] Livechat info/actions

* [IMPROVEMENT] RoomActionsView

* [NEW] Visitor Navigation

* [NEW] Get Department REST

* [FIX] Borders

* [IMPROVEMENT] Refactor RoomInfo View

* [FIX] Error while navigate from mention -> roomInfo

* [NEW] Livechat Fields

* [NEW] Close Livechat

* [WIP] Forward livechat

* [NEW] Return inquiry

* [WIP] Comment when close livechat

* [WIP] Improve roomInfo

* [IMPROVEMENT] Forward room

* [FIX] Department picker

* [FIX] Picker without results

* [FIX] Superfluous argument

* [FIX] Check permissions on RoomActionsView

* [FIX] Livechat permissions

* [WIP] Show edit to livechat

* [I18N] Add pt-br translations

* [WIP] Livechat Info

* [IMPROVEMENT] Livechat info

* [WIP] Livechat Edit

* [WIP] Livechat edit

* [WIP] Livechat Edit

* [WIP] Livechat edit scroll

* [FIX] Edit customFields

* [FIX] Clean livechat customField

* [FIX] Visitor Navigation

* [NEW] Next input logic LivechatEdit

* [FIX] Add livechat data to subscription

* [FIX] Revert change

* [NEW] Livechat user Status

* [WIP] Livechat tags

* [NEW] Edit livechat tags

* [FIX] Prevent some crashes

* [FIX] Forward

* [FIX] Return Livechat error

* [FIX] Prevent livechat info crash

* [IMPROVEMENT] Use input style on forward chat

* OnboardingSeparator -> OrSeparator

* [FIX] Go to next input

* [NEW] Added some icons

* [NEW] Livechat close

* [NEW] Forward Room Action

* [FIX] Livechat edit style

* [FIX] Change status logic

* [CHORE] Remove unnecessary logic

* [CHORE] Remove unnecessary code

* [CHORE] Remove unecessary case

* [FIX] Superfluous argument

* [IMPROVEMENT] Submit livechat edit

* [CHORE] Remove textInput type

* [FIX] Livechat edit

* [FIX] Livechat Edit

* [FIX] Use same effect

* [IMPROVEMENT] Tags input

* [FIX] Add empty tag

* Fix minor issues

* Fix typo

* insert livechat room data to our room object

* review

* add method calls server version

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-05-08 14:36:10 -03:00
Diego Mello 61afa86c0e
[NEW] Passcode and biometric unlock (#2059)
* Update expo libs

* Configure expo-local-authentication

* ScreenLockedView

* Authenticate server change

* Auth on app resume

* localAuthentication util

* Add servers.lastLocalAuthenticatedSession column

* Save last session date on background

* Use our own version of app state redux

* Fix libs

* Remove inactive

* ScreenLockConfigView

* Apply on saved data

* Auto lock option label

* Starting passcode

* Basic passcode flow working

* Change passcode

* Check if biometry is enrolled

* Use fork

* Migration

* Patch expo-local-authentication

* Use async storage

* Styling

* Timer

* Refactor

* Lock orientation portrait when not on tablet

* share extension

* Deep linking

* Share extension

* Refactoring passcode

* use state

* Stash

* Refactor

* Change passcode

* Animate dots on error

* Matching passcodes

* Shake

* Remove lib

* Delete button

* Fade animation on modal

* Refactoring

* ItemInfo

* I18n

* I18n

* Remove unnecessary prop

* Save biometry column

* Raise time to lock to 30 seconds

* Vibrate on wrong confirmation passcode

* Reset attempts and save last authentication on local passcode confirmation

* Remove inline style

* Save last auth

* Fix header blink

* Change function name

* Fix android modal

* Fix vibration permission

* PasscodeEnter calls biometry

* Passcode on the state

* Biometry button on PasscodeEnter

* Show whole passcode

* Secure passcode

* Save passcode with promise to prevent empty passcodes and immediately lock

* Patch expo-local-authentication

* I18n

* Fix biometry being called every time

* Blur screen on app inactive

* Revert "Blur screen on app inactive"

This reverts commit a4ce812934.

* Remove immediately because of how Activities work on Android

* Pods

* New layout

* stash

* Layout refactored

* Fix icons

* Force set passcode from server

* Lint

* Improve permission message

* Forced passcode subtitle

* Disable based on admin's choice

* Require local authentication on login success

* Refactor

* Update tests

* Update react-native-device-info to fix notch

* Lint

* Fix modal

* Fix icons

* Fix min auto lock time

* Review

* keep enabled on mobile

* fix forced by admin when enable unlock with passcode

* use DEFAULT_AUTO_LOCK when manual enable screenLock

* fix check has passcode

* request biometry on first password

* reset auto time lock when disabled on server

Co-authored-by: Djorkaeff Alexandre <djorkaeff.unb@gmail.com>
2020-05-08 14:04:37 -03:00
Diego Mello ce51982bb0
Update all dependencies (#2008)
* Android RN 62

* First steps iOS

* Second step iOS

* iOS compiling

* "New" build system

* Finish iOS

* Flipper

* Update to RN 0.62.1

* expo libs

* Hermes working

* Fix lint

* Fix android build

* Patches

* Dev patches

* Patch WatermelonDB: https://github.com/Nozbe/WatermelonDB/pull/660

* Fix jitsi

* Update several minors

* Update dev minors and lint

* react-native-keyboard-input

* Few updates

* device info

* react-native-fast-image

* Navigation bar color

* react-native-picker-select

* webview

* reactotron-react-native

* Watermelondb

* RN 0.62.2

* Few updates

* Fix selection

* update gems

* remove lib

* finishing

* tests

* Use node 10

* Re-enable app bundle

* iOS build

* Update jitsi ios
2020-05-08 13:37:49 -03:00
Djorkaeff Alexandre a6bca99393
[FIX] UIKit crashing when UIKitModal receive update event (#2088)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-05-08 09:56:11 -03:00
Djorkaeff Alexandre a937e6a6ac
[IMPROVEMENT] Keep screen awake while recording/playing some audio (#2089)
* [IMPROVEMENT] Keep screen awake while recording/playing some audio

* [FIX] Add expo-keep-awake mock
2020-05-08 09:55:26 -03:00
Djorkaeff Alexandre c578f1bbe8
[IMPROVEMENT] Change server while connecting/updating (#1981)
* [IMPROVEMENT] Change server while connecting

* [FIX] Not login/reconnect to previous server

* [FIX] Abort all fetch while connecting

* [FIX] Abort sdk fetch

* [FIX] Patch-package

* Add comments

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-05-05 10:11:28 -03:00
Djorkaeff Alexandre 2ea6d34fd1
[FIX] Recorded audio on Android doesn't play on iOS (#2073)
* react-native-video -> expo-av

* remove react-native-video

* Add audio mode

* update mocks

* [FIX] Loading bigger than play/pause

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-04-30 15:54:27 -03:00
Djorkaeff Alexandre ee0e7bb9d1
[FIX] Investigate app losing connection issues (#1890)
* [WIP] Reopen without timeOut & ping with 5 sec & Fix Unsubscribe

* [FIX] Remove duplicated close

* [FIX] Use no-dist lib

* [FIX] Try minor fix

* [FIX] Try reopen connection when app was put on foreground

* [FIX] Remove timeout

* [FIX] Build

* [FIX] Patch

* [FIX] Snapshot

* [IMPROVEMENT] Decrease time to reopen

* [FIX] Some fixes

* [FIX] Update sdk version

* [FIX] Subscribe Room Once

* [CHORE] Update sdk

* [FIX] Subscribe Room

* [FIX] Try to resend missed subs

* [FIX] Users never show status when start app without network

* [FIX] Subscribe to room

* [FIX] Multiple servers

* [CHORE] Update SDK

* [FIX] Don't duplicate streams on subscribeAll

* [FIX] Server version when start the app offline

* [FIX] Server version cached

* [CHORE] Remove unnecessary code

* [FIX] Offline server version

* [FIX] Subscribe before connect

* [FIX] Remove unncessary props

* [FIX] Update sdk

* [FIX] User status & Unsubscribe Typing

* [FIX] Typing at incorrect room

* [FIX] Multiple Servers

* [CHORE] Update SDK

* [REVERT] Undo some changes on SDK

* [CHORE] Update sdk to prevent incorrect subscribes

* [FIX] Prevent no reconnect

* [FIX] Remove close on open

* [FIX] Clear typing when disconnect/connect to SDK

* [CHORE] Update SDK

* [CHORE] Update SDK

* Update SDK

* fix merge develop

Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-04-03 15:03:53 -03:00
Diego Mello 6982d7676a
[NEW] Two Factor authentication via email (#1961)
* First api call working

* [NEW] REST API Post wrapper 2FA

* [NEW] Send 2FA on Email

* [I18n] Add translations

* [NEW] Translations & Cancel totp

* [CHORE] Totp -> TwoFactor

* [NEW] Two Factor by email

* [NEW] Tablet Support

* [FIX] Text colors

* [NEW] Password 2fa

* [FIX] Encrypt password on 2FA

* [NEW] MethodCall2FA

* [FIX] Password fallback

* [FIX] Wrap all post/methodCall with 2fa

* [FIX] Wrap missed function

* few fixes

* [FIX] Use new TOTP on Login

* [improvement] 2fa methodCall

Co-authored-by: Djorkaeff Alexandre <djorkaeff.unb@gmail.com>
2020-04-01 17:32:24 -03:00
Diego Mello 80c3c8ee4f
[CHORE] Use storyboard on splash screen (#1939)
* Update react-native-bootsplash

* iOS

* Fix android
2020-03-26 10:21:21 -03:00
Djorkaeff Alexandre 1a3551169f
[IMPROVEMENT] Create App Group property on Info.plist (#1858)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-03-11 16:06:55 -03:00
Diego Mello 005e1ac46b
[FIX] Detox tests (#1790) 2020-03-03 17:27:38 -03:00
Djorkaeff Alexandre a9e61c5d8b
[FIX] HTTP Basic Auth (#1753)
Co-authored-by: Diego Mello <diegolmello@gmail.com>
2020-02-20 09:58:13 -03:00
Diego Mello 6a40d4cefb
[CHORE] Memory leaks investigation (#1675) 2020-02-17 16:06:18 -03:00
Diego Mello d970952086
[REVERT] Show emoji keyboard on Android (#1738) 2020-02-17 09:14:56 -03:00
Diego Mello a62dfef3fa
[FIX] Different sourcemaps generation for Hermes (#1724)
* [FIX] Different sourcemaps generation for Hermes

* Upload sourcemaps after build
2020-02-14 16:12:06 -03:00
Djorkaeff Alexandre 88c0ba6aff
[FIX] Messages Overlapping (Android) and MessageBox Scroll (iOS) (#1720) 2020-02-13 17:44:57 -03:00
Diego Mello 952dc761ab
[CHORE] Update react-native-image-crop-picker (#1712) 2020-02-13 16:25:28 -03:00
Diego Mello 3683b8936a
[IMPROVEMENT] Use reselect (#1696) 2020-02-11 11:09:14 -03:00
Djorkaeff Alexandre b87472f10b
[NEW] UiKit Beta (#1497) 2020-02-11 11:01:35 -03:00
Diego Mello 20b9679bf8
[CHORE] Update RN to 0.61.5 (#1638)
* [CHORE] Update RN to 0.61.5

* [CHORE] Update react-native patch

Co-authored-by: Djorkaeff Alexandre <djorkaeff.unb@gmail.com>
2020-01-30 10:50:56 -03:00
Djorkaeff Alexandre 66d21408b6 [NEW] Image Viewer (#1479) 2019-12-18 18:13:11 -03:00
Djorkaeff Alexandre 5f0389c7de [NEW] Reply notification (#1448) 2019-12-17 13:27:13 -03:00
Diego Mello cf98d794fd
[FIX] Few fixes on themes (#1477) 2019-12-17 11:08:06 -03:00
Diego Mello 7df6afdcd3
[FIX] Emoji parser not working on Hermes (#1445) 2019-12-11 16:00:38 -03:00
Diego Mello 7b51df377d
[NEW] Themes (#1298) 2019-12-04 13:39:53 -03:00
Djorkaeff Alexandre a0dc2bad4a [NEW] Tablet support (#1300) 2019-11-25 17:01:17 -03:00
Diego Mello cfd63a6480
Update patch and minor deps (#1386) 2019-11-18 14:52:08 -03:00
Diego Mello 44415c881f
[CHORE] Remove react-native-scrollable-tab-view fork (#1352) 2019-10-31 20:04:13 -03:00
Diego Mello 93356341b9
[UPDATE DEPS] Update RN to 0.61.3 (#1345) 2019-10-31 13:21:59 -03:00
Diego Mello ab1b6fbcc3
[UPDATE DEPS] react-navigation and react-navigation-stack (#1337) 2019-10-29 15:14:22 -03:00
Diego Mello 1b5f565b08
[CHORE] Remove memoize-one (#1284) 2019-10-08 10:22:43 -03:00
Djorkaeff Alexandre 08dac6ff86 [FIX] China shouldn't use CallKit (#1274) 2019-10-07 10:38:59 -03:00
Diego Mello b795a2fd59
[FIX] Audio player track and thumb not rendering on Android (#1273) 2019-10-04 10:38:35 -03:00
Diego Mello 121ff45f90
Revert react-native-safe-area-view (#1265) 2019-10-02 09:18:08 -03:00
Djorkaeff Alexandre d9f7ff836d [CHORE] Update react-native-jitsi-meet to 2.0.1 (#1249) 2019-09-27 16:16:03 -03:00
Djorkaeff Alexandre 3dd47519fe [CHORE] Update react-native-reanimated to 1.3.0 (#1246) 2019-09-27 14:18:11 -03:00
Djorkaeff Alexandre 1c22cc2f9f [CHORE] Update react-native-safe-area-view (#1219) 2019-09-26 13:52:22 -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