* 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-64415 Attachment style updated for draft and Edit post screen
* Minor
* constants
* Addressed Review comments
* UX review comments
* Error state changes
* Fix the style issue for retry state on the attachment
* Fix some styling
* Fix the space extra char issue in post
* Added test for draft_scheduled_post and header component
* Added test for drafts_button/index.ts
* Added test for send_button/index.ts
* Added test for servers/scheduled_post.ts queries
* Added test for global_scheduled_post_list/index.ts
* Added test for rescheduled draft index file and minor update
* Added test for core option and index
* Added test for scheduled post options
* Added test for send_draft index file
* updated test for draft_scheduled_post and draft_scheduled_post_header
* Updated test for drafts_button index
* Updated test for send_button index
* Updated test for server/scheduled_post
* Updated test for global_scheduled_post/index
* removed the unnecessary config and team data to populate in db for test
* Update app/components/draft_scheduled_post/draft_scheduled_post.test.tsx
Co-authored-by: Daniel Espino García <larkox@gmail.com>
* linter fixes
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Daniel Espino García <larkox@gmail.com>
* Viewing Files in Edit mode in mobile with ability to delete and save
* Added upload attachment to keyboard tracker view
* using state instread of use ref
* Minor
* Added tests
* intl extract
* new function getFiles
ById, batch file deletion and tests
* Files fetching in edit options and tests
* Removed DeviceEventEmitter and used React context
* Added support to check minimum required version to show edit file attachments
* resolve forward ref issue
* Minor
* memotized props for context and observe config with value
* Ability to show quick action and add files to edit post
* type safety for EditPostContext
* Reverted back the post priority props
* constant shift
* Added test for QuickAction to show slashcomand
* Added test for edit_post, upload_item and upload_remove
* Added test for Edit_post_input and edit_post index
* fix the height issue between attachment and keyboard due to safeArea
* Minor: removed debugging border color
* Changed the Edited text style in the post from (edited) to icon + Edited
* Import fixes
* Ability to show quick action and add files to edit post
* type safety for EditPostContext
* Reverted back the post priority props
* constant shift
* Added test for QuickAction to show slashcomand
* Added test for edit_post, upload_item and upload_remove
* Added test for Edit_post_input and edit_post index
* fix the height issue between attachment and keyboard due to safeArea
* Minor: removed debugging border color
* Addressed dev review comments
* Import fixes
* Address UX comments
* Fixed props for UploadItem and remove effective Edit mode
* handled save button disabled state when uploading attachments
* handled newly added and retry file removal without alert message
* Test updated
* Added test for input_quick_action index.tsx
* Added test for not in edit mode for upload_item index
* Added test for upload_remove component when not in edit mode
* added tests for file_upload_error hook
* Added test for calling callback when in edit mode
* Test for edit post input for server version check
* linter fixes
* Changed font size from 16 to 14px for edited
* separated common component and test
* Removed the margin styles from the text as it is not been applied.
* removed the duplicate code from rebase
* Viewing Files in Edit mode in mobile with ability to delete and save
* Added upload attachment to keyboard tracker view
* using state instread of use ref
* Minor
* Added tests
* intl extract
* new function getFiles
ById, batch file deletion and tests
* Files fetching in edit options and tests
* Removed DeviceEventEmitter and used React context
* Added support to check minimum required version to show edit file attachments
* resolve forward ref issue
* Minor
* memotized props for context and observe config with value
* Import fixes
* Ability to show quick action and add files to edit post
* type safety for EditPostContext
* Reverted back the post priority props
* constant shift
* Added test for QuickAction to show slashcomand
* Added test for edit_post, upload_item and upload_remove
* Added test for Edit_post_input and edit_post index
* fix the height issue between attachment and keyboard due to safeArea
* Minor: removed debugging border color
* Addressed dev review comments
* Import fixes
* Address UX comments
* Fixed props for UploadItem and remove effective Edit mode
* handled save button disabled state when uploading attachments
* handled newly added and retry file removal without alert message
* Test updated
* Added test for input_quick_action index.tsx
* Added test for not in edit mode for upload_item index
* Added test for upload_remove component when not in edit mode
* added tests for file_upload_error hook
* Added test for calling callback when in edit mode
* Test for edit post input for server version check
* Viewing Files in Edit mode in mobile with ability to delete and save
* Added upload attachment to keyboard tracker view
* using state instread of use ref
* Minor
* Added tests
* intl extract
* new function getFiles
ById, batch file deletion and tests
* Files fetching in edit options and tests
* Removed DeviceEventEmitter and used React context
* Added support to check minimum required version to show edit file attachments
* resolve forward ref issue
* Minor
* memotized props for context and observe config with value
* Import fixes
* Fix GM/DM unread threads highlighting all teams as unreads
* Use options object instead of boolean flags
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* MM-64243 Fix the animation delay while send the post in the channel
* Updated test and logic
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* Standardize tabs across different components
* Add tests and minor fixes
* Remove unneeded tests
* Add missing change
* Fix test
* Refactor to remove the component from the hook
* Rename hasDot for requiresUserAttention.
* Apply the changes to scheduled posts
* Fix texts
* Fix tests and fix minor style issue on iOS
* Fix filter positioning
* Fix some e2e tests
* Fix tests
---------
Co-authored-by: Mattermost Build <build@mattermost.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
* use existing components
* remove unnecesary files
* fix snapshot
* update snapshot
* do not tie styles to the abac feature
* remove unnecesary margin top
* simplify props, add style for flat banner, remove unncesary index
* simplify condition, extract inline to component function
---------
Co-authored-by: Mattermost Build <build@mattermost.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
* feat: fixed email copy interface
* feat: changed message when long-pressing an email on mobile in messages & headers
* implemented changes: message decriptors outside component; email/url check and cleanHref outside renderContent function
* Add Report a Problem functionality
* update cache pinned SHA version from 4.0.2 to 4.2.0
* Address feedback
* Fix tests
* Fix some issues and update kotlin coroutines version
* Fix delete file for iOS
* Bump 1 more version for coroutines
* Use rxjava instead of kotlin coroutines to avoid security issue
* Move path prefix to avoid test error
* Address feedback
* Address feedback
* Address feedback
* Use mailto on iOS
* Fix tests related to button changes
* Address feedback
* Update icon and fix onboarding buttons
* Fix test
---------
Co-authored-by: Angelos Kyratzakos <angelos.kyratzakos@mattermost.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
* Handle biometric authentication
* jailbreak/root detection and biometric small fixes
* remove server from initializeSecurityManager and fix loginEntry
* Add screen capture prevention and other small fixes
* added unit tests to SecurityManager
* added shielded nativeID to protect views
* use MobilePreventScreenCapture instead of MobileAllowScreenshots in config type definition
* Apply Swizzle for screen capture on iOS
* Apply patch to bottom sheet to prevent screen captures
* fix ios sendReply
* Fix SDWebImage swizzle to use the correct session
* Fix potential crash on Android when using hardware keyboard
* rename patch for network library to remove warning
* add temp emm reference
* fix initializeSecurityManager tests
* fix translations
* use siteName for jailbreak detection when connecting to a new server
* fix i18n typo
* do not query the entire config from the db only the required fields
* migrate manage_apps to use defineMessages
* use TestHelper.wait in tests
* use defineMessages for security manager
* fix missing else statement for gm_to_channel
* created a TestHelper function to mockQuery and replace as jest.Mock with jest.mocked
* fix unit tests
* fix unit tests (again) and include setting the test environment to UTC
* Fix keyboard disappearing on iOS
* update react-native-emm
* Only set the height on the message component if it ends up being greater than the maxHeight to avoid re-renders
* Cache the teams theme to avoid unnecessary computation and re-renders
* useDidUpdate instead of useEffect to avoid setting the theme preference without need
* add comment on clear cache
* feat: Add support for custom profile attributes in edit profile form
feat: Add support for custom profile attributes in edit profile
refactor: Normalize whitespace in CustomAttribute type definition
fix: Resolve type mismatch for customAttributes in UserInfo interface
test: Add test for udpateCustomProfileAttributeValues method
fix typing, submit changes to server
missing files
test: Add tests for CustomProfileField component
fix naming
fix imports
fix
feat: Add field_refs hook for managing field references
feat: Make `setRef` ref parameter optional with default no-op implementation
refactor: Replace CustomProfileField with useFieldRefs for profile form
refactor: Optimize edit profile screen imports and custom attributes handling
refactor: Move custom attributes logic to remote actions in user.ts
address PR reviews
test: Add tests for custom attributes in edit profile
test: Add tests for EditProfile component with custom attributes
fix: Add UserModel type assertion to currentUser in edit profile tests
test: Add tests for ProfileForm custom attributes functionality
test: Add comprehensive tests for useFieldRefs hook
test: Add tests for fetchCustomAttributes and updateCustomAttributes
add tests
remove unneeded files
review changes
remove counter from hook
remove package.resolved
create interface for reuse of record
* fix signature type
* feat: added new check for isAudio and added the supported mime types
* feat: adding the progress and audio on the audio file message
* feat: finishing the layout of the audio_file
* feat: play and pause audio
* feat: update the progress bar when audio is playing
* feat: update the timeframe of the audio
* feat: update with the new design
* feat: adding download and preview
* feat: creates a hook for the file download and preview
* feat: adding useCallback to make the return stable
* fix: iOS issue when playing in loop
* feat: adding localization for the error
* fix: removing code tha was inserted for debug
* feat: add a new line on the en.json
* fix: fixing types
* feat: adding the onSeek method inside the progress bar
* feat: changing progress value to animated value
* feat: changing to GestureDetector and making the seek method work
* feat: adding a touchable without feedback to prevent the audio to triggering other page
* feat: adding the drag on the seek method
* feat: making the download button more gray
* fix: fix tests
* fix: prevent onProgress from clearing the seconds when the audio is paused
* feat: clamping the position of the cursor to never be dragged offscreen
* feat: enhancing the experience of dragging the cursor on the progress bar
* feat: differentiate between the throttles
* feat: remvoing the aac audio files support
* feat: pausing if the focus has changed
* feat: render differently the audio file when in the files list
* refactor: optimize audio file component by using useCallback for event handlers
* refactor: extract stopPropagation function for better readability in AudioFile component
* feat: implement custom useThrottled hook and replace lodash throttle in AudioFile component
* refactor: update useThrottled hook to accept a generic callback type
* fix: loading of uri of audio files after merge
* feat: add audioFile style to enhance layout for audio files
* fix: tests
* Add new team picker for search
* try fix result header
* fix style
* add test for team picker
* add some tests
* add tests on team list and team list item
* hide All Teams search behind FF
* use style variable for separator
* ALL TEAMS does not have a search history
* Update app/components/team_list/index.test.tsx
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
* move ALL_TEAMS_ID to a constant file
* memoize the construction of team list to prevent useless allocation
* combine pushes
* move style to stylesheet
* revert changes to Package.resolved
* improve team list index tests
* add test to ensure team picker does not show for just one team
* add test to ensure the file icon filter only shows when i'm on the file tab
* improve jsx readability by making the if test positive
* add test to make sure team picket does not show if there's only one team
* test: remove snapshot and add expect that separator exists in index 0 but index 1 (#8474)
* Trigger Build
---------
Co-authored-by: Elias Nahum <nahumhbl@gmail.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Rahim Rahman <rahim.rahman@mattermost.com>