* [MM-59089] Add a compliance export constant (#27919)
* add a useful constant
* i18n
* another constant
* another i18n
* [MM-60422] Add GetChannelsWithActivityDuring (#28301)
* modify GetUsersInChannelDuring to accept a slice of channelIds
* add GetChannelsWithActivityDuring
* add compliance export progress message; remove unused custom status
* linting
* tests running too fast
* add batch size config settings
* add store tests
* linting
* empty commit
* i18n changes
* fix i18n ordering
* MM-60570 - Server-side changes consolidating the export CLI with server/ent code (#28640)
* add an i18n field; add the CLI's export directory
* int64 -> int
* Add UntilUpdateAt for MessageExport and AnalyticsPostCount
to merge
* remove now-unused i18n strings
* add TranslationsPreInitFromBuffer to allow CLI to use i18n
* use GetBuilder to simplify; rename TranslationsPreInitFromFileBytes
* [MM-59089] Improve compliance export timings (#1733 - Enterprise repo)
* MM-60422 - Performance and logic fixes for Compliance Exports (#1757 - Enterprise repo)
* MM-60570 - Enterprise-side changes consolidating the export CLI with server/ent code (#1769 - Enterprise repo)
* merge conflicts; missed file from ent branch
* MM-61038 - Add an option to sqlstore.New (#28702)
remove useless comment
add test
add an option to sqlstore.New
* MM-60976: Remove RunExport command from Mattermost binary (#28805)
* remove RunExport command from mattermost binary
* remove the code it was calling
* fix i18n
* remove test (was only testing license, not functionality)
* empty commit
* fix flaky GetChannelsWithActivityDuring test
* MM-60063: Dedicated Export Filestore fix, redo of #1772 (enterprise) (#28803)
* redo filestore fix#1772 (enterprise repo) on top of MM-59966 feature
* add new e2e tests for export filestore
* golint
* ok, note to self: shadowing bad, actually (when there's a defer)
* empty commit
* MM-61137 - Message export: Support 7.8.11 era dbs (#28824)
* support 7.8.11 era dbs by wrapping the store using only what we need
* fix flaky GetChannelsWithActivityDuring test
* add a comment
* only need to define the MEFileInfoStore (the one that'll be overridden)
* blank commit
* MM-60974 - Message Export: Add performance metrics (#28836)
* support 7.8.11 era dbs by wrapping the store using only what we need
* fix flaky GetChannelsWithActivityDuring test
* add a comment
* only need to define the MEFileInfoStore (the one that'll be overridden)
* performance metrics
* cleanup unneeded named returns
* blank commit
* MM-60975 - Message export: Add startTime and endTime to export folder name (#28840)
* support 7.8.11 era dbs by wrapping the store using only what we need
* fix flaky GetChannelsWithActivityDuring test
* add a comment
* only need to define the MEFileInfoStore (the one that'll be overridden)
* performance metrics
* output startTime and endTime in export folder
* empty commit
* merge conflict
* MM-60978 - Message export: Improve xml fields; fix delete semantics (#28873)
* support 7.8.11 era dbs by wrapping the store using only what we need
* fix flaky GetChannelsWithActivityDuring test
* add a comment
* only need to define the MEFileInfoStore (the one that'll be overridden)
* performance metrics
* output startTime and endTime in export folder
* empty commit
* add xml fields, omit when empty, tests
* fix delete semantics; test (and test for update semantics)
* clarify comments
* simplify edited post detection, now there's no edge case.
* add some spacing to help fast running tests
* merge conflicts/updates needed for new deleted post semantics
* linting; fixing tests from upstream merge
* use SafeDereference
* linting
* stronger typing; better wrapped errors; better formatting
* blank commit
* goimports formatting
* fix merge mistake
* minor fixes due to changes in master
* MM-61755 - Simplifying and Support reporting to the db from the CLI (#29281)
* finally clean up JobData struct and stringMap; prep for CLI using db
* and now simplify using StringMapToJobDataWithZeroValues
* remove unused fn
* create JobDataExported; clean up errors
* MM-60176 - Message Export: Global relay cleanup (#29168)
* move global relay logic into global_relay_export
* blank commit
* blank commit
* improve errors
* MM-60693 - Refactor CSV to use same codepath as Actiance (#29191)
* move global relay logic into global_relay_export
* blank commit
* refactor (and simplify) ExportParams into shared
* blank commit
* remove unused fn
* csv now uses pre-calculated joins/leaves like actiance
* improve errors
* remove nil post check; remove ignoredPosts metric
* remove unneeded copy
* MM-61696 - Refactor GlobalRelay to use same codepath as Actiance (#29225)
* move global relay logic into global_relay_export
* blank commit
* refactor (and simplify) ExportParams into shared
* blank commit
* remove unused fn
* csv now uses pre-calculated joins/leaves like actiance
* remove newly unneeded function and its test. goodbye.
* refactor GetPostAttachments for csv + global relay to share
* refactor global_relay_export and fix tests (no changes to output)
* improve errors
* remove nil post check; remove ignoredPosts metric
* remove unneeded copy
* remove unneeded nil check
* PR comments
* MM-61715 - Generalize e2e to all export types 🤖 (#29369)
* move global relay logic into global_relay_export
* blank commit
* refactor (and simplify) ExportParams into shared
* blank commit
* remove unused fn
* csv now uses pre-calculated joins/leaves like actiance
* remove newly unneeded function and its test. goodbye.
* refactor GetPostAttachments for csv + global relay to share
* refactor global_relay_export and fix tests (no changes to output)
* improve errors
* remove nil post check; remove ignoredPosts metric
* remove unneeded copy
* remove unneeded nil check
* PR comments
* refactor isDeletedMsg for all export types
* fix start and endtime, nasty csv createAt bug; bring closer to Actiance
* align unit tests with new logic (e.g. starttime / endtime)
* refactor a TimestampConvert fn for code + tests
* bug: pass templates to global relay (hurray for e2e tests, otherwise...)
* add global relay zip to allowed list (only for tests)
* test helpers
* new templates for e2e tests
* e2e tests... phew.
* linting
* merge conflicts
* unexport PostToRow; add test helper marker
* cleanup, shortening, thanks to PR comments
* MM-61972 - Generalize export data path - Actiance (#29399)
* extract and generalize the export data generation functions
* finish moving test (bc of previous extraction)
* lift a function from common -> shared (to break an import cycle)
* actiance now takes general export data, processes it into actiance data
* bring tests in line with correct sorting rules (upadateAt, messageId)
* fixups, PR comments
* turn strings.Repeat into a more descriptive const
amended: one letter fix; bad rebase
* MM-62009 - e2e clock heisenbug (#29434)
* consolidate assertions; output debuggable diffs (keeping for future)
* refactor test output generator to generators file
* waitUntilZeroPosts + pass through until to job = fix all clock issues
* simplify messages to model.NewId(); remove unneeded waitUntilZeroPosts
* model.NewId() -> storetest.NewTestID()
* MM-61980 - Generalize export data path - CSV (#29482)
* simple refactoring
* increase sleep times for (very) rare test failures
* add extra information to the generic export for CSV
* adj Actiance to handle new generic export (no difference in its output)
* no longer need mergePosts (yay), move getJoinLeavePosts for everyone
* adjust tests for new csv semantics (detailed in summary)
* and need to add the new exported data to the export_data_tests
* rearrange csv writing to happen after data export (more logical)
* linting
* remove debug statements
* figured out what was wrong with global relay e2e test 3; solid now
* PR comments
* MM-61718 - Generalize export data path - Global Relay (#29508)
* move global relay over to using the generalized export data
* performance pass -- not much can be done
* Update server/enterprise/message_export/global_relay_export/global_relay_export.go
Co-authored-by: Claudio Costa <cstcld91@gmail.com>
---------
Co-authored-by: Claudio Costa <cstcld91@gmail.com>
* MM-62058 - Align CSV with Actiance (#29551)
* refactoring actiance files and var names for clarity
* bug found in exported attachments (we used to miss some start/ends)
* changes needed for actiance due to new generic exports
* bringing CSV up to actiance standards
* fixing global relay b/c of new semantics (adding a note on an edge case)
* aligning e2e tests, adding comments to clarify what is expected/tested
* necessary changes; 1 more test for added functionality (ignoreDeleted)
* comment style
* MM-62059 - Align Global Relay with Actiance/CSV; many fixes (#29665)
* core logic changes to general export_data and the specific export paths
* unit tests and e2e tests, covering all new edge cases and all logic
* linting
* better var naming, const value, and cleaning up functions calls
* MM-62436 - Temporarily skip cypress tests that require download link (#29772)
---------
Co-authored-by: Claudio Costa <cstcld91@gmail.com>
* [MA-12]: Add label to form field in channel header
* [MA-12]: Update aria attributes and tests
* [MA-12]: Update snapshots, fix e2e test
* [MA-12]: Fix E2E tests
* [MA-12]: Fix type in test
* Enable eslint-plugin-jsx-a11y and add standard rules as warnings or errors
* Fix jsx-a11y/anchor-has-content in BooleanSetting and add SettingSet
The invisible anchor was presumably supposed to let people jump from one
setting's help text to another setting. That didn't work for boolean
settings because there's no element with the ID of the setting. Instead
of an empty anchor, we needed to give something else that ID.
To improve the semantics of those settings, I also put those settings
into a fieldset with a legend containing the setting's label text
instead of using an actual label element as per how it's done on the
MDN. We'll probably end up using the SettingSet for other settings as
well.
Finally, I also fixed the link used by admin.service.useLetsEncryptDescription.disabled
to point to the right place and made it so that the link would open in
the current tab. Ideally, I'd also remove the Markdown from that help
text, but there's a lot here already.
* Fix jsx-a11y/anchor-has-content in CheckboxSetting
* Use SettingSet in PasswordSettings to improve semantics and layout
The main reason for doing this is to use a proper legend and fieldset
for these settings, but it also has the benefit of removing the extra
spacing from in between these settings.
* Change CopyText to use a button and require an aria-label for it
This fixes two ESLint warnings:
- This was failing jsx-a11y/anchor-has-content because it was an empty
anchor element. I fixed that by giving it an aria-label matching the
tooltip of the CopyText, but that required that the label was a string,
so I had to change how CopyText is used. I also made the label required
so that people give an accessible explanation of what is being copied.
- This was also failing jsx-a11y/anchor-is-valid because it should be a
button instead of a link. I applied the btn-link class and made it so
that that doesn't override the link's height which hopefully doesn't
cause problems anywhere else.
This is to fix jsx-a11y/anchor-has-content and jsx-a11y/anchor-is-valid
in the component. The ESLint plugin is complaining that this component
is using an anchor instead of a button element, so I changed that
* Turn jsx-a11y/anchor-has-content to be an error
* Update snapshots
* Remove lingering reference to nested prop which has been removed
* Changing system console password settings to a list and update padding for alerts in it
* Fix typo in SettingSet
* Update E2E tests to enable Elasticsearch by ID and remove duplicate enableElasticSearch helper
* Update E2E test to look for a legend instead of a label
* Fix typo in snapshot
* refactor: convert bot_api_1_spec.js to typescript
- convert file bot_accounts/bot_api_1_spec.js to typescript
- update related data types in order to fix argument issues
* refactor: convert bot_api_not_cloud_spec.js to ts
- convert file bot_accounts/bot_api_not_cloud_spec.js to typescript
- update related data types in order to fix argument issues
* refactor: convert bot_channel_intro_spec.js to ts
- convert file bot_accounts/bot_channel_intro_spec.js to typescript
- convert support/api/bots.js to typescript
- remove data type bot.d.ts and include docs and definitions in
support/api/bots.ts
* refactor: convert bot_accounts files to ts
- convert files from js to typescript
- move declaration files to ts
- update js docs
- fix lint and type errors
Related to #21303
* fix: replace params undefined on client.createUser
- replace undefined params with empty strings as suggested in review
* fix: add types to variables on spec tags_spec.ts
- add types to variables
* fix: update args for apiCreateBot on api/bots.ts
- update args so that lint issue is fixed
* Apply suggestions from code review
update assertion to 401
---------
Co-authored-by: Saturnino Abril <5334504+saturninoabril@users.noreply.github.com>
* Initial version of the new search interface
* Fixing CI
* style tweaks
* tweaks to date picker in search
* change search input to button
* Addressing a lot of small problems
* Addressing current search visualization
* Fixing problem on filter autocompletion
* Adding some more fixes
* Tiny style ajustment
* Removing unnecessary slice call
* Adding search extensibility
* Improving the extensibility
* Fixing and refactoring a bit
* On clear click, clear the current search
* splitting components for simplicity
* tweaks to file ext search
* Addressing PR review comments and adding color to the extensions search icons
* Improving a bit the extension search
* Fixing CI
* Fixing some bugs
* Keep the focus on search input whenever we change the search type
* Adding SearchHint tests
* Adding search_box_type_selector tests
* Adding tests for the SearchBox component
* Adding tests for search box suggestions
* Adding SearchBoxInput tests
* Splitting extension suggestion component and provider
* ExtensionSuggestion tests
* Removing unneeded property
* Adding SearchBoxhints tests
* Adding tests for NewSearch component
* Adding tests for the extension suggestion provider
* Fixing linter errors
* Fixing tests
* Fixing linter errors
* Fixing linter errors
* Adding license check for plugins
* Addressing PR review comments
* Addressing PR review comments
* Addressing PR review comments
* Fixing tests
* Fixing some cypress tests
* More work around cypress tests for search
* Some accessibility changes
* more work on cypress tests
* fixing more cypress tests
* Fixing linter errors
* Fixing tests
* Fixing ctrl+f6 switching
* Fixing scrolling on small windows wheneve you are searching
* Improve editing in the middle of the search text
* Addressing some PR review comments
* Addressing some PR review comments
* Addressing some PR review comments
* Addressing some PR review comments
* Fixing tests and linter errors
* Fixingls tests and linter errors
* Fix type checks
* Clearer logic to render plugin or builtin suggestion
* Addressing PR review changes
* Addressing PR review changes
* Using selectors for plugin components
* Changing uppercase to lowercase on lists of components
* Updating tests
* Updating snapshots
* minor css tweaks
* minor css tweak
* Adding the search type and the clear button
* Fixing problem with the filetype selector
* fixing linter errors
* Some fixes
* More linter fixes
* Reverting prettier auto-formating
* Fixing CI
* Fixing CI
* Fixing chrome problem
* Fixing CI
* Addressing PR review comments
---------
Co-authored-by: Matthew Birtch <mattbirtch@gmail.com>
Co-authored-by: Christopher Speller <crspeller@gmail.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
* refactor: migrate collapsed_reply_threads to ts
- migrate collapsed_reply_threads e2e tests to typescript
- update matterpollPlugin plugin constant so that it matches
with apiUploadAndEnablePlugin argument
Fixes: #21296
* refactor: use PostMessageResp on channel_notifications_spec
- use type PostMessageResp
- convert cy.wrap to regular for loop
* refactor: update types on collapsed_reply_threads
- add missing types to variables
- update types on current variables
- remove unnecessary commands on following_spec.ts
* fix: solve issue with non callable function
- move wait call to next line
* refactor: remove functions from global scope
- keep functions as helper functions
- fix lint issue
* refactor: convert channel_moderation files to ts
- convert js files to ts
- update data types accordingly
- fix lint issues
Fixes: #21332
* fix: update argument type for visitChannel
- update type
- fix types issues
* refactor: change return type for getAdminAccount()
- change return type to getAdminAccount as UserProfile
* Add descriptions to test cases for getNeededAtMentionedUsernames
* MM-59854 Load users who are at-mentioned in message attachment fields
* MM-59854 Add server support for at-mentioning users in message attachment fields
* Migrate support/external_commands from JS to TS
* MM-59584 Ensure that at-mentions never show in other message attachment fields
* MM-59584 Add E2E tests for how we load users based on at mentions
* Use new E2E test helpers in other places
* Update snapshots
* Rename Office 365 to Entra ID
* Another text update
* More lingering texts
* More text updates
* Updated link
* Linting
* Override office365 service name in admin user details view
* linting
* Updated help text
* Fix bad merge
* Linting
* Removed one leftover occurance of Office 365
* Typo and log in link fix
* Typo fix
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Harshil Sharma <harshilsharma63@gmail.com>
* Utilize free runners for E2E tests, report back to PR on run completion
* Increase test stability on smaller instances
* Merge worker reports
* merge start+prepare steps
* upgrade keycloak
* increase test timeouts
* Add video recording to report artifacts
Co-authored-by: Saturnino Abril <5334504+saturninoabril@users.noreply.github.com>
---------
Co-authored-by: Saturnino Abril <5334504+saturninoabril@users.noreply.github.com>
* create ChannelBookmarks table
* ChannelBookmark model
* channel bookamrks Store layer
* add GetBookmarksForAllChannelByIdSince
* add channel bookmarks to test store
* Add channel bookmarks to app layer
* remove index for createAt in channel bookmarks migrations
* remove createAt from select channel bookmark query and enable store delete bookmark test
* update reponse of UpdateBookmark
* rename db migration files
* channel bookmarks store update sort order
* channel bookmarks app layer update sort order
* fix lint & tests
* Fix lint and introduce util functions to insert / remove from slice
* remove model etag
* i18n
* defer remove file info after test run
* Fix tests passing the request context
* fix migrations
* fix TestRetry
* Add bookmark permissions (#25560)
* Adds channel bookmarks permissions
* Fix linter
* Remove unnecessary empty lines
* Remove scss change as it's not necessary anymore
* Fix mock store
* Fix mock store and add role entry
* Fix test
* Adds cypress test and update permissions migration to update admin roles
* Adds channel bookmarks roles to default admin roles
* Adds bookmark permissions to default role permissions constant in webapp
* Update mmctl test
* Update permission test after normalising the roles
* fix store tests
* fix app layer tests
* Add new bookmark endpoint (#25624)
* Adds channel bookmarks api scaffold and create endpoint
* Applies review comments to the API docs
* Adds websocket test to create channel bookmark
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* MM-54426 exclude Channel Bookmarks files from data retention (#25656)
* Augment channel APIs to include bookmarks (#25567)
* update files docs for server 9.4
* Adds update channel bookmark endpoint (#25653)
* Adds update channel bookmark sort order endpoint (#25686)
* Adds update channel bookmark endpoint
* Updates edit app method to return the right deleted bookmark and adds tests
* Adds the update channel bookmark sort order endpoint
* Fix repeated test after merge
* Assign right permissions to each test
* Update store and app layer to return specific errors and add tests
* Adds delete channel bookmark endpoint (#25693)
* Updates edit app method to return the right deleted bookmark and adds tests
* Fix repeated test after merge
* Updates edit app method to return the right deleted bookmark and adds tests
* Adds delete channel bookmark endpoint
* Adds list channel bookmarks endpoint (#25700)
* Add channel moderation to bookmarks (#25716)
* fix migrations index
* fix getChannelsForTeamForUser
* fix getChannelsForTeamForUser
* fix bad merge client4
* fix file api with bookmark permission
* add ChannelBookmarks feature flag
* add missing translations
* Set DB column for type as enum
* use custom type for bookmark query using sqlx
* use transaction when saving bookmark
* return NewErrNotFound instead of Sql.ErrNoRows
* use squirrel for IN query
* add a limit of 1K for records in GetBookmarksForAllChannelByIdSince
* UpdateSortOrder with one single query instead of multiple updates
* fix shadow declaration
* fix channel bookmarks permission string definition in admin console
* fix another shadow declaration
* Fix model conversion
* add SplitSliceInChunks
* remove include bookmarks in channels api
* Cap amount of bookmarks per channel
* add etag back to get channels
* feedback review
* update file info when replacing a bookmark file
* return 501 not implemented when the license is not available
* add detail message when getting channel member on bookmark api
* start audit before permission check on create bookmark api
* use require.Eventuallyf for testing WS events
* remove unnecessary log in app layer
* use require instead of assert to avoid panics
* enforce limit when querying bookmarks since
* prevent to create/update bookmark if file is already attached
* fix lint
* delete file when a bookmark is deleted
* Dot allow to set a fileId and a url at the same time to a bookmark
* fix query to delete a file that belongs to a bookmark
* do not patch the bookmark type
* Server side FeatureFlag check (#26145)
* use ff in server, set ff to false
* turn on FF for unit tests
* defer unset FF for unit tests
* turn ff on for testing
* only allow attaching files that were uploaded for bookmark
* Set feature flag off as default
* fix lint
* update email templates as PR failed
* revert templates
* force the assignment of ID when creating a bookmark
* Fix unit tests
---------
Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: Caleb Roseland <caleb@calebroseland.com>
Co-authored-by: Scott Bishel <scott.bishel@mattermost.com>
* trial commit
* [MM-56172] Integrate fetching and sorting of user reporting into the table component (#25749)
* inint
* lint
* Update system_users.test.tsx.snap
* cypress test fix
* added pkg
* revoke sessio into new compo
* Update system_users.test.tsx.snap
* trans
* more disable
* rename
* Update system_users_dropdown.test.tsx
* snap
* Delete system_users_list.test.tsx.snap
* Create system_users_list.test.tsx.snap
* Delete system_users_list.test.tsx.snap
* name2
* start removing the filter from the list
* more clean
* snaps
* Update package-lock.json
* des
* Update index.scss
* Update system_users_list.tsx
* Update system_users_list.tsx
* Update system_users.tsx
* Update system_users_list.tsx
* Update index.scss
* menu
* action menu
* split
* Update system_users_list.tsx
* Update system_users_list_new.tsx
* fix
* Update en.json
* temp remove
* Update system_users.test.tsx.snap
* Delete system_users_list.test.tsx.snap
* Update en.json
* ch
* move
* a
* Update en.json
* fix
* Update system_users.test.tsx.snap
* Update menu.tsx
* Update admin_header.tsx
* changes in the file system
* fixes
* integration begin
* lint
* Update rhs.ts
* upper pagination
* Update list_table.scss
* pinned
* more a11y
* Update list_table.scss
* i18n mor
* design changes
* descriptions
* lint
* loading states
* fix
* actions update
* index fix
* single action
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* [MM-56467] Clear up unused code of old systems users (#25855)
* ccc
* Update en.json
* [MM-56478] Improve the user loading in user details page after changes in users list page in admin console (#25861)
* init
* tem
* more fix
* handlers clear up, team's fixes
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* Merge'd
* [MM-56279] Add paging to user list (#25863)
* Update system_users.tsx
* Update system_users.tsx
* [MM-56270] Hook up user actions menu, refactor modals to work with new menuing style (#25897)
* Hookup menu items and modals
* Add error handling, test fixes
* Ensure modals animate properly
* Add a bunch of TODOs around keeping the user data up to date
* Fix i18n and snaps
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* [MM-56263] Enable selective column hiding for users table (#25898)
* [MM-56539] Revisiting the design of the total users count on the left and in pagination in users table (#25947)
* default sort order
* default sort order (#25956)
Co-authored-by: Mattermost Build <build@mattermost.com>
* [MM-56267] Add search term filtering (#25952)
* Include search term with request
* Update user count with filtering
* Oops
* Add 500ms debounce to avoid spamming server with requests
* PR feedback
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* [MM-56398] Add date range filter to user reporting table (#25974)
* WIP
* Some small adjustments
* Two fixes
* PR feedback
* Remove menuitem
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* Merge'd
* [MM-56615] Add messaging for MySQL instances around the post stats (#26036)
* [MM-56261] Add export modals and hook up button to user management screen (#26015)
* [MM-56576] Update users when actions occur and show errors when actions fail (#25951)
* [MM-56576] Update users when actions occur and show errors when actions fail
* Forgot the else
* PR feedback
* [MM-56617] Move action modals to ConfirmModalRedux
* Add filters popover to the users admin table (#26042)
* int
* 0 zeros
* dd
* re
* file move
* Update system_users_filter_popover.scss
* a
* Update system_users_filter_popover.scss
* role and status
* fix
* Update index.test.ts
* overlay
* Update dropdown_input.tsx
* i
* Update en.json
* done
* Update en.json
* dd
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
* Make column toggler column menu items consistent with table column names
* Couple typo fixes
* Fix i18n
* some e2e related changes
* Fixed issue where you couldn't queue multiple batch export jobs
* Fix id tag
* table header mis allignment issue solved
* [MM-56727] Fix a TODO, fix Demote to guest should only appear when enabled
* rev comments
* Stop sending down all profile data
* chore(e2e): Fix tests cases for new user Management ui (#26089)
* chore(e2e): Fix lint issues in cypress tests
* chore(e2e): Fix e2e tests
- user_management_spec
- authentication_method_spec
* [MM-56710] Revert to in-memory compilation of CSV report
* Update system_users.tsx
* Merge'd
* Fix test
---------
Co-authored-by: M-ZubairAhmed <m-zubairahmed@protonmail.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: yasserfaraazkhan <attitude3cena.yf@gmail.com>