* Support Markdown svg and custom size inline images
* remove commonmark patches
* move getMarkdownImageSize to @utils/markdown
* Fix worklet not present while running unit tests that use calculateDimensions
* Set max size for SVG
* Set svg dimensions based on calculated size
* feedback review
* Gallery screen (ground work)
* Open the gallery from posts
* Open the gallery from post draft
* feedback review
* Feedback review 2
* do not remove dm channel names and localization fix
* update to the latest network-client
* do not override file width, height and imageThumbail if received file does not have it set
* bring back ScrollView wrapper for message component
* Remove Text wrapper for markdown paragraph
* Fix YouTube play icon placeholder
* Make video file play button container round
* Add gif image placeholder
* Save images & videos to camera roll
* Feedback review 3
* load video thumbnail when post is in viewport
* simplify prefix
* Squash, rebase, test fixes
* PR Feedback addressed
* fix snapshot tests with SafeAreaProvider
* Addresses feedback
* Adds Category & Channel error
* Tests fixed
* MyChannel count
* finalize DM and GM avatars and icon as well as other small fixes
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Edit Server display name
* Lock iPhone to portrait and iPad to landscape
* Create actions for app global to store device token and multi server tutorial
* Add MutliServer tutorial on first use
* WebSocket reconnection priority
* have isRecordGlobalEqualToRaw to not check for value
* Return early on edit server if error is found
* Prepopulate server screen with last logged out server address and name
* Add CompassIcon to circleCI asset generation
* Initial commit post input
* Fix message posting, add create direct channel and minor fixes
* Fix "is typing" and "react to last post" behaviour
* Some reordering, better handling of upload error, properly clear draft on send message, and fix minor progress bar misbehavior
* Add keyboard listener for shift-enter, add selection between video or photo while attaching, add alert when trying to attach more than you are allowed, add paste functionality, minor fixes and reordering
* Add library patch
* Fix lint
* Address feedback
* Address feedback
* Add missing negation
* Check for group name and fix typo on draft comparisons
* Address feedback
* Address feedback
* Address feedback
* Address feedback
* Fix several bugs
* Remove @app imports
* Address feedback
* fix post list & post draft layout on iOS
* Fix post draft cursor position
* Fix file upload route
* Allow to pick multiple images using the image picker
* accurately get the channel member count
* remove android cursor workaround
* Remove local const INPUT_LINE_HEIGHT
* move getPlaceHolder out of the component
* use substring instead of legacy substr for hardward keyboard
* Move onAppStateChange above the effects
* Fix camera action bottom sheet
* no need to memo SendButton
* properly use memberCount in sender handler
* Refactor how to get memberCount
* Fix queryRecentPostsInThread
* Remove unused isDirectChannelVisible && isGroupChannelVisible util functions
* rename errorBadUser to errorUnkownUser
* extract localized strings
* use ClientErrorProps instead of ClientError
* Minor improvements
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* feature edit profile screen
* minor refactoring
* Apply suggestions from code review
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* ts fixes
* revert floatingTextInput label
This reverts commit a778e1f761.
* code clean up
* Apply suggestions from code review
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* code fix
* code fix
* Adding preventDoubleTap
* rename id to fieldKey
* Update edit_profile.tsx
* wip
* navigating through fields; partly done
* navigating through fields - partly done
* navigating through fields; partly done
* completed field navigation
* added theme into dependency array
* code clean up
* revert conditions for disabling fields
* Added colorFilters prop to Loading component
* Completed loading feature on Edit Profile screen
* code clean up
* Add profile_error
* renamed valid_mime_types to valid_image_mime_types
* added props isDisabled to email field
* refactored next field logic
* fix
* fix
* code clean up
* code clean up
* Updated ESLINT hook rules to warning instead of disabled
* code fix
* code fix
* new line within your_profile component
* added memo for Field component
* added canSave to dependency array
* update loading component - color filter
* Update app/screens/edit_profile/edit_profile.tsx
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* dependency fix
* fix to fetch my latest status
* fix to remove unnecessary user id for local action updateLocalUser
* prevents bouncing for iOS
* code revert
* Adding textInputStyle and animatedTextStyle to FloatingTextInput component
* correction after dev session
* adding changes as per new ux
* Update edit_profile.tsx
* corrections after ux review
* ux review
* ux review
* code clean up
* Adding userProfileFields into useMemo
* Add enableSaveButton to dependency of submitUser
* Added react-native-image-picker
* fix picker util
* Added action for setDefaultProfileImage
* account outline on remove picture
* Update edit_profile.tsx
* fix image picker
* style fix
* fix image picker
* removed unused types
* mmjstool issue with integrity checksum
* perform camera permission check for Android
* fix to pull latest status
* updated ChangeProfilePicture to EditProfilePciture
* removed integrity key for mmjstool in package-lock.json
* corrections from pr review
* bumping react-native-image-picker to v4.7.1
* pod install
* update to hooks dependency
* fix profile picture component
* added event emitter from edit_profile_picture
* made hitslop a constant
* code clean up
* uploadProfilePicture as a remote action
* else if profileImage removed
* removed check on isBot
* update renderProfilePicture dependencies
* extractFileInfo with try catch
* updated snappoints
* Revert "updated snappoints"
This reverts commit 6d16d480a1.
* profile picture size
* refactored renderProfilePicture into its own component
* change to if else
* platform select for hasPermissions
* unneeded comment removed
* else if on prefix in edit profile picture
* track has update user info now
* moved image_picker under edit_screen and increased actionSheets item height
* added preventDoubleTap for imagePicker
* multiple uploads
* switch the conditions
* added alert box as requested by Marina
* Revert "added alert box as requested by Marina"
This reverts commit 20735c17a8.
* Apply suggestions from code review
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* removed userInfos constant
* added useMemo for certain components on profile_picture
* converting account-outline into a constant
* added panelItem component
* adding return instead of making the function return
* eslint fix
* update i18n desc
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* hasPictureUrl transferred to file utils
* removing excess mediaType prop
* add USER_PROFILE_PICTURE_SIZE into constant/profile
* relocate hasPictureUrl method
* relocate hasPictureUrl
* rename ImagePicker to ProfileImagePicker
* removing isDestructive property from panelTypes.
* update sectionLimit for attachFileFromPhotoGallery
* Change animation for showModalOverCurrentContext to a quick alpha on iOS
* re-create PickerUtil if intl changes
* Combine styles in edit_profile_picture component
* Split profile image component into smaller components
* useCallback for showFileAttachmentOptions
* split comment into multiple lines
* edit_profile group refs
* remove unnecessary casting
* add new line to file.d.ts
* remove extra space for utils/index.d.ts
* allowMultiSelection for attachFilesFromFiles, default is false
* Split edit profile screen into smaller components
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Started with bottom tabs layout
* code clean up
* Added animation to bottom tab bar
* returns null if not focused
* code clean up
* Updating layout
* Updated modal screen
* Updated animation
* Updated animation
* Fix SafeArea on Home
* A few clean ups
* code clean up
* Fix issue with navigation on Android
* Use React Navigation in combination of RNN & create bottom tab bar
* Set tab bar line separator height to 0.5
* Fix snapshot tests
* Add home tab mention badge
* Apply new themes
* Home Tab badge
* Remove unused constants
Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* MM_30475 : ADDED default schema
* MM_30475 : ADDED todo for field 'value' of default/Global entity
* MM_30476 : Created schema for SERVER DB
* MM_30476 : Server model [ IN PROGRESS ]
* MM_30476 : Including types for group, groups_in_channel and role
* MM_30476 : ADDED models for Group
- @typings absolute path has been added to the tsconfig.json
* MM_30476 : ADDED typings to current models
* MM_30476 : ADDED typings to current models
* MM_30476 : ADDED models related to TEAM section of the ERD
* MM_30476 : ADDED models for User section of the ERD
* MM_30476 : ADDED models for POST section of the ERD
* MM_30476 : ADDED models for Channel section of the ERD
* MM_30475 : Updated typings and references to MM_TABLES
* MM_30476 : Verified all field names
* MM_30476 : Verified every table associations
* MM_30476 : Verified all relation fields
* MM_30476 : Updated primary id of the main models
We will override the wdb id at component level when we create a new records. This involves the models : channel, group, post, team and user.
* MM_30476 : Including 1:1 relationship amongs some entities
* MM_30476 : ADDED Schema Managers
* The migration array will hold all the migration steps.
* The initial app release (e.g. v2 )will have an empty array and subsequent releases (e.g. v2.1 ) will have the steps listed in that array.
* On initialization, the database will perform the migration to accomodate for new columns/tables creation and while it will conserve the mobile phone's data, it will also make it conform to this new schema.
* If a migration fails, the migration process will rollback any changes. This migration will be thoroughly tested in development before pushing it live.
* Revert "MM_30476 : ADDED Schema Managers"
This reverts commit a505bd5e11.
* MM_30478 : Converted schema_manager into a function
* MM_30478 : Updated schema manager and included patch for wdb
* MM_30478: Updated watermelondb patch package
* MM_30478 : Update function create_schema_manager to createSqliteAdaptorOptions
* MM_30476 : Update constant name to reflect directory name
* MM_30476 : Updated msgCount from my_channel model to message_count in server schema
* MM_30482 : Added tests for schema_manager
* MM_30482 : Database Manager [ IN PROGRESS ]
* MM_30478 : Returning an sqliteAdapter instead of an object
* MM_30476 : Apply suggestions from code review
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* MM_30476 : Updated all imports as per instruction.
* MM_30476 : Shortening object chains by destructuring
* MM_30476 : Updated schema file structure
* MM_30476 : Prettifying @typings folder
* MM_30476 : Removing useless ids
* MM_30476 : Prettify imports for decorators
* MM_30476 : ADDED documentations and lazy queries to Channel and Channel_Info
* MM_30476 : ADDED documentations for default schema
* MM_30476 : Documentation [ IN PROGRESS ]
- Following JSDoc syntax for single line comment
- Removed redundant fields in the 'membership' tables and left only the @relation records.
* MM_30476 : Documentations [ IN PROGRESS ]
* MM_30476 : Documentations [ IN PROGRESS ]
* MM_30476 : Documentations [ IN PROGRESS ]
* MM_30476 : Documentations [ IN PROGRESS]
Updated
1) my_team and team,
2) my_channel and channel,
to each have 1:1 relationship with one another
* MM_30476 : Updated all Typescript definitions
* MM_30476 :Updated @relation to @immutableRelation
* MM_30476 : Updated description for previous_post_id
* MM_30478 : Updated patch package for wdb module
* MM_30478: DB Manager [IN PROGRESS ]
* MM_30478: DB Manager [IN PROGRESS]
* MM_30478: DB Manager [IN PROGRESS]
* MM_30478 : DB Manager [IN PROGRESS]
* MM_30478 : Deleting .db file on iOS
* MM_30478: Successfully deleting .db files and directory on iOS side
* MM_30478 : Update definition for default/global
* MM_30478 : Updated all models
* MM_30478 : Doing a bit of house cleaning
* MM_30478: Record of new server connection added to default/servers db
* TS Definitely Typed Assignment issue is now FIXED
* MM_30478 : TS Definitely Typed Assignment \n Removed all the constructors but error still in editor tabs. But this time the app is not crashing
* MM_30478 : Attempt 1 [SUCCESSFUL]
* MM_30478 : Removing useDefineForClassFields
* MM_30478 : Retrieving the servers in a list + Improved the DB Manager and Babel config
* MM_30478 : Updated babel.config.js
* MM_30478 : Minor UI correction
* MM_30478 : Jest and Typescript configuration
* MM_30478 : A bit of housekeeping
* MM_30478 : Installed WDB on Android
* MM_30478 : Deletes new server record from default DB
* MM_30478 : Returns subset of server db instances
* MM_30478 : Code clean up
* MM_30478 : Code clean up on db manager
* MM_30478 : House keeping + Patch for WDB
* MM_30478 : Android - Saving & Deleting in FilesDir [COMPLETED]
* MM_30478 : Code clean up
* MM_30478 : Code clean up
* MM_30478 : Code clean up
* MM_30478 : Test successful on Android device
* MM_30478 : Rolling back change to jest.config.js
* MM_30478 : Updated test to test_integration
* MM_30478 : Fix imports
* MM_30478 : Refactored the manual testscript
* MM_30478 : Renamed database manager test file
* MM_30478 : Code clean up
* MM_30478 : Updated manual test file with a note.
* MM_30478 : Fixed JEST issue with TS
* MM_30478 : Fixed JEST issue with TS
* MM_30478 : Fixed JEST issue with TS
* MM_30478 : Implementing JEST test cases
* MM_30478 : Implementing JEST last test cases
* MM_30478 : Jest fixing ts errors
* MM_30478 : Database Manager Jest testing [ IN PROGRESS ]
* Update mobile v2 detox deps
* MM_30478 : Add uniqueness check for duplicates server creation
* MM_30478 : Corrections from Joseph reviews
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Avinash Lingaloo <>
Co-authored-by: Joseph Baylon <joseph.baylon@mattermost.com>
* MM_30476 : Added all isolated tables from the server schema
* MM_30476 : Updated 'test' script in package.json
* MM_30476 : Rename table schemas to avoid name collision
* MM_30476 : ADDED @babel/plugin-tranform-flow-strip-types
* MM_30476 : ADDED test for default schema
* MM_30476 : ADDED tests to server schema
* MM_30476 : ADDED tests for models and schema
* MM_30476 : ADDED tests for models and schema
* MM_30476 : Removed the tests on the models.