* Initial setup for new keyboard
* fix the offset calculation onMove by adding isKeyboardFullyOpened
* Done with the keyboard handling implementation
* Handled keyboard focus and blured state using context
* Added default height for input container
* Android support
* Tablet state handling
* Fix for refreshing offset in list
* Created a default context for mention post list
* Fix linter errors
* Fix tests
* Minor
* Fix the height issue for tablet view
* Review comments
* Dependency fix
* Reveiw comment
* keyboard animation only enabled with screen on top navigation
* added tests
* Added extra keyboard component for emoji picker (#9328)
* Added extra keyboard component
* handled swipe geature for extra keyboard
* scroll to bottom visible on emoji picker
* Check for stale event for keyboard geature area
* fix keyboard stale event for mid-gesture change swipe direction
* Closing emoji picker when message priority is opened
* changing to thread view closes emoji picker
* Close emoij picker and keyboard when attachment icons are clicked
* handle android emoji picker behaviour
* Remove emoji picker code
* fix tests
* Address reviev comments
* Test fixes
* usePreventDoubleTab for race condition and corrected comment on isInputAccessoryViewMode flag
* File attachments option in bottom sheet quick action (#9331)
* Added extra keyboard component
* handled swipe geature for extra keyboard
* File attachments option in bottom sheet quick action
* Updated tests
* i18n
* fix test
* Added tests
* Review comment
* fix tests
* Integrated Emoji picker to Extra keyboard component. (#9339)
* Added extra keyboard component
* handled swipe geature for extra keyboard
* scroll to bottom visible on emoji picker
* Fix the post input container height change issue
* Added emoji picker with search functionality
* keyboard height not recorded fallback to default height, set search to false closing emoji picker
* fix search funcitonality in android
* scroll to end bottom dismissed with pressed
* Fixed the scroll issue for android
* fix the flickering post input issue
* Wired up the emoji picker
* Added keyboard and spaceback in emoji picker
* intl extract
* initial cursor position and simple calculation review comment
* separated grapheme to utils file
* Review comments
* nitpick
* Fix the bottom safe area and navigation stack restore fix
* Fix test
* disabled emoji picker in edit post screen
* change the name of the variable to name it clarier
* fix the tab gap issue in andriod
* disabled the emoji skin tone change on andriod
* fix the input container jump issue
* fix the failing test
* UX review
* added white space after the attachment icon
* When @ or / is press open keyboard on andriod also fix the scroll issue when keyboard is open
* back bottom closes emoji picker and opening keyboard jump fix
* reverted code
* fixed the flickering issue of input and scroll position fix
* Added BoR button
* Fix the gap issue in thread
* fix the warning reaminated issue when opening a channel
* Fix the extra space issue between input and emoij picker
* Minor fix for extra space between input and emoji picker
* WIP
* Fix thread view bottom safe area and gap between keyboard and searched emojis
* WIP
* refactor: make borConfig optional in BoRAction component
* refactor: remove optional borConfig and simplify state initialization
* Fix the keyboard issue in tablet
* Fix the warning issue react-native-keyboard-controller
* Fix tests
* Fix the tablet search hight issue
* Replaced the ExtraKeyboardProvider with KeyboardProvider from rnkc for permalink
* WIP
* Successfully toggeled bor status
* Displayed bor chip in draft editor
* Send bor post
* Displayed bor chip in draft editor with wrapping
* Added read receipt
* Bottom sheet jump issue resolved
* Search do not close after selecting emoji in search list
* Added the bottom inset height in search emoji for android
* integrated bor receipt count
* fix buid issue
* Added margin
* Handled updating receipts on sync
* test: add comprehensive tests for updateDraftBoRConfig
* test: add initial test file for burn on read label component
* test: add tests for BoRLabel component
* test: update BoRLabel tests to use toBeVisible and remove formatTime mock
* test: update BoR label tests to use renderWithIntl
* refactor: remove getBaseProps and specify props inline in BoRLabel tests
* refactor: improve test component formatting for readability
* test: add validation for BoRLabel time display formats
* test: add comprehensive tests for Burst on Read (BoR) functionality
* WIP
* test: add unit tests for BOR quick action component
* test: add comprehensive tests for BoR quick action component
* test: add missing props to QuickActions test setup
* test: add tests for BoR quick action rendering
* test: mock BoRQuickAction component for testing
* test: add comprehensive tests for observeIsBoREnabled function
* test: add initial test file for BOR read receipts screen
* test: add comprehensive tests for BORReadReceipts component
* test: add test cases for BOR read receipts display
* test: add comprehensive tests for humanReadable format in formatTime
* Added tests
* lint fix
* cleanup
* cleanup
* cleanup
* cleanup
* cleanup
* i18n fix
* Fix the cancel state to emoji picker
* Prevented displaying BoR quick action in threads
* Fixed a test
* lint fix
* review fixes
* review fixes
* i18n fix
* fixed tests
* review fixes
* lint fix
* restored podfile
* Fixed WS event handling for receiving bor post receipnt
* Fixed a test
* fixed TS
* Implemented burn post now for sender and receiver (#9401)
* Implemented burn post now for sender and receiver
* test: add tests for burnPostNow function
* test: add test for delete post option
* test: add comprehensive tests for DeletePostOption component
* Added tests
* Lint fix
* minor improvemenmts
* lint fix
* reset unintended changes
* reset unintended changes
* Bor delete when read by all (#9407)
* WIP
* Updated for all read
* cleanup
* test: add comprehensive tests for handleBoRPostAllRevealed
* test: add tests for BOR events in websocket event handler
* feat: add comprehensive tests for shouldUpdateForBoRPost function
* Added tests
* Lint fix
* fixed TS
* fixed padding
* UX fixes
---------
Co-authored-by: Rajat Dabade <a-rajat.dabade@mattermost.com>
Co-authored-by: Rajat Dabade <rajatdabade1997@gmail.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Rahim Rahman <rahim.rahman@mattermost.com>
* Add the channel options to get into playbooks (#8750)
* Add the channel options to get into playbooks
* Use playbook run id instead of playbook id
* i18n
* Fix issues and move playbooks to the products folder
* Address some tests
* Fix test
* Address design issues
* Add requested comment
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Playbooks database (#8802)
* Add lastPlaybookFetchAt to channel table (#8916)
* Add lastPlaybookFetchAt to channel table
* Add missing commit
* Use my_channel table instead
* Fix test
* Address feedback
* First implementation of playbooks API (#8897)
* First implementation of playbooks API
* Add version check
* Address feedback
* Fix test
* Add last fetch at usage and other improvements
* Simplify test
* Add sort_order, update_at and previousReminder columns (#8927)
* Add sort_order, update_at and previousReminder columns
* Remove order from the schema
* Fix tests
* Add tests
* Add websockets for playbooks (#8947)
* Add websocket events for playbooks
* Fix typo
* Add playbook run list (#8761)
* Add the channel options to get into playbooks
* Use playbook run id instead of playbook id
* i18n
* Fix issues and move playbooks to the products folder
* Address some tests
* Fix test
* Add playbook run list
* Add missing texts
* Add back button support and item size to flash list
* Address design issues
* Add requested comment
* Standardize tag and use it in the card
* Fix merge
* Add API related functionality
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Add playbooks run details (#8872)
* Add the channel options to get into playbooks
* Use playbook run id instead of playbook id
* i18n
* Fix issues and move playbooks to the products folder
* Address some tests
* Fix test
* Add playbook run list
* Add missing texts
* Add back button support and item size to flash list
* Address design issues
* Add requested comment
* Standardize tag and use it in the card
* Add playbooks run details
* Fix merge
* Add API related functionality
* Add API related changes
* Order fixes
* Several fixes
* Add error state on playbook run
* i18n-extract
* Fix tests
* Fix test
* Several fixes
* Fixes and add missing UI elements
* i18n-extract
* Fix tests
* Remove files from bad merge
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Add missing tests for playbooks (#8976)
* Add the channel options to get into playbooks
* Use playbook run id instead of playbook id
* i18n
* Fix issues and move playbooks to the products folder
* Address some tests
* Fix test
* Add playbook run list
* Add missing texts
* Add back button support and item size to flash list
* Address design issues
* Add requested comment
* Standardize tag and use it in the card
* Add playbooks run details
* Fix merge
* Add API related functionality
* Add API related changes
* Order fixes
* Several fixes
* Add error state on playbook run
* i18n-extract
* Fix tests
* Fix test
* Several fixes
* Fixes and add missing UI elements
* i18n-extract
* Fix tests
* Remove files from bad merge
* Add tests
* Fix typo
* Add missing strings
* Fix tests and skip some
* Fix test
* Fix typo
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Address feedback
* Address feedback and fix tests
* Address comments and fix tests
* Address feedback
* Address plugin changes and fix bugs
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* MM-63935 - abac end user indicators
* rename policy variables to clearly indicate are from abac
* update attributes hook to cache processed data
* use policyEnforce property
* add missing type
* rename policy_enforced to abac_policy_enforced part 1
* add channel policy enforced type
* fix translation file
* remove unnecesary stop propagation
* MM-63935 - abac end user indicators db changes
* rename the policy name to clarify which policy does refer to
* update property name and add documentation to clarify intention
* rename policy_enforced to abac_policy_enforced db changes side
* MM-60705 DB migration: added update_at column to draft table for mobile
* refactor: updated docs
* refactor: reverted unwanted changes and updated default value for update_at columns
* refactor: changed the condition for excepting 0 value for update_at column
* MM-49540: drafts migration adding metadata
Adds a drafts table migration adding the column "metadata".
This column is going to be primarily used to store the draft's
metadata priority field.
* Addresses review comments
* Remove watermelondb limitation on updating an already updated model
* Add logic to handle different prepare states and improve logging
* fix tests
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Init
* Test fix
* New sync implementation
* misc
* Includes migration and other servers sync
* Misc
* Migration fix
* Migration is done version 7
* Update app/queries/servers/thread.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Update app/database/operator/server_data_operator/handlers/team_threads_sync.ts
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Feedback changes
* Fixes when old thread gets a reply
* Fix
Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* Add terms of service
* Add i18n
* Fix test
* Address feedback
* Address ux feedback
* Update texts
* Avoid Review to show on top of ToS
Co-authored-by: Daniel Espino <danielespino@MacBook-Pro-de-Daniel.local>
* Fix crash on Android when session expired notification is presented
* react-native-notification patch for schedule fix on android and open local notification on iOS
* Fix android scheduled session notification crash
* patch react-native-navigation to support blur/focus AppState on Android
* remove schedule session expired notification from login entry point
* schedule session expired notification actions
* add session manager
* Handle open session expired notification
* Ensure no unresolved types in the definition files
* Address feedback and general cleanup
* Move import from @constants/x to @constants where relevant
* Remove unneeded "import as"
* WIP
* Actions updated to fetch remote first, and local on error
* Groups fetch and save
* PR Feedback: prepare vs store and undefined fix
* Forgot to add file
* Groups Mention WIP
* Groups highlight!
* Merge, PR Feedback
* PR Feedback
* PR Feedback: Try/Catch blocks
* PR Feedback
* Rebased with PR feedback
* Exclusion fix, plus id order
* Tidies up iterations
* Loops updated
* Update app/database/operator/server_data_operator/handlers/group.ts
Co-authored-by: Avinash Lingaloo <avinashlng1080@gmail.com>
* PR Feedback: Remove unnecessary prepare/store methods
* Newline ESLint error
* Extracts out id generation for group-associations
* Batches if not fetchOnly
Co-authored-by: Avinash Lingaloo <avinashlng1080@gmail.com>
* Add column last_fetched_at to MyChannel & Thread tables and the migration
* Fix schema tests
* Handle lastFetchAt, retrieve threads on init and properly observe thread unreads (#6436)
* [Gekidou] Set lastFetchAt when fetching posts for a channel (#6437)
* Set lastFetchAt when fetching posts for a channel
* When resetting _preparedState set always to null
* Revert changes in WS
* Handle and set lastFetchedAt for MyChannel in iOS push notification
* feedback review
* iOS fallback to last post createAt if no lastFetchAt set
* Handle lastFetchAt on Android push notifications
* create storePostsForChannel local action
* Fix iOS fallback to last post create_at
Co-authored-by: Daniel Espino García <larkox@gmail.com>
* WIP
* Actions updated to fetch remote first, and local on error
* Groups fetch and save
* PR Feedback: prepare vs store and undefined fix
* Forgot to add file
* Update database to hold if a user is a team or channel admin
* TeamMembership identifier
* Fix handleTeamMembership test
* Update server.md
Co-authored-by: Avinash Lingaloo <avinashlng1080@gmail.com>
* Improve loading display name of direct channels
* Improve team switching
* Improve perceived performance when opening the app with an active session
* Fix upgrade path from v1
* Set moment locale while formatting date
* feedback review
* Add try again functionality to failed posts
* Fix attach files on Android
* feedback review
* Prevent android crash when uploading files for the first time
* Update the timestamp for updateAt when retrying to post
* Add POST TIME TO FAIL
* use function isPostFailed