* Added test for user beloonging to channel but not team
* Added test for read onmly channel
* Added test for fetching scheduled posts for team you don;'t belong to
* Added more tests
* test enhancements
* CI
* verified available actions on scheduled posts
* Review fixes
* Added copy text option for scheudled posts
* Added check for archived channel and deactivated DM
* Import optimisation
The Store variable was written to _after_ the server
started which was causing the race.
We simply move it to before we start the server.
While we are here, we fix yet another race condition
which was unrelated, but doing it in one sweep. This
was related to the user props access. When a user is updated,
there was 3 ws events that get sent out, 2 were deep-copied
whereas 1 was not. This led to race condition in postgres
binary-param mode where we were trying to set the user props.
https://mattermost.atlassian.net/browse/MM-61700
* Add test notification tool
* Add frontend styles
* Remove option from admin view
* Refactor create post and add translations
* Fix several CI errors
* Fix API and frontend snapshots
* Refactor trailing and leading icon on buttons
* Add different button states
* i18n-extract
* Fix wrong text
* Add tests
* Fix wrong string
* Fix test
* feat: E2E send test notifications (#28371)
* Refactor send desktop notification
* Address rest of the feedback
* Fix tests
* Add correct link
* Fix test
---------
Co-authored-by: Mattermost Build <build@mattermost.com>
Co-authored-by: yasserfaraazkhan <attitude3cena.yf@gmail.com>
Tests at very high scale indicates that the iteration
of all connections during websocket broadcast starts
to become a bottleneck.
To optimize this, we move the channelMember cache from
inside web_conn.go to the hubConnectionIndex.
This involves adding a new map keyed by the channelID
and containing all webConns where the user is a member
of that channel. Subsequently, a new method needed to
be added to invalidate the cache which previously
used to happen in web_conn.
And as a last step, we remove the cache from web_conn
to reduce SQL queries to the DB.
https://mattermost.atlassian.net/browse/MM-61130
```release-note
NONE
```
* MM-60874 - show usertz in schedule message time options
* get the teammate time working with moment
* replace moment with luxon
* add unit tests to core_menu_options
* fix linter
* address pr feedback
* MM-60123 - store most recently custom time (#29120)
* MM-60123 - store most recently used custom time
* add the most recent used custom date option
* improve the code and add some validations
* add unit tests to cover the recently used time scenario
* clean up code in unit tests
* fix linter report
* fix translation files
* address PR feedback
* do not show recent custom time if matches any of the existing options
* prevent show date if is in the past and update unit tests
* format custom date based on week and add unit tests for new scenarios
* remove unused mock, clean up code, extract code to function
* extract recent used custom date logic to be an independent component
* address PR comments for improvements
* turn function into selector
* replaced hardcoded value with a color variable
* changed color values for scroll_to_bottom_toast
* added btn and btn-primary to toast
* Changed dynamically created css variables with static ones
---------
Co-authored-by: Soham <soham@obmondo.com>
Co-authored-by: Mattermost Build <build@mattermost.com>
* Ensure all packages remove a node_modules in their folder when cleaning
* Upgrade typescript to 5.6.3 and move to root package.json
Note that this currently fails to build the types package due to
@types/node which I'm going to try to remove
* Update @types/node to 20.11 to match .nvmrc
* Upgrade zen-observable to 0.10.0
It looks like localforage-observable uses its own version
of zen-observable because it hasn't been updated in years.
This seems like something we probably should remove.
* Update yargs to 17.7.2
* Update webpack-dev-server to 5.1.0
* Remove webpack-bundle-analyzer since we haven't used it in years
* Update webpack to 5.95.0
* Update web-vitals to 4.2.4
* Update turndown to 7.2.0
* Update tinycolor2 to 1.6.0
* Update timezones.json to 1.7.0
* Update stylelint to 16.10.0, stylelint-config-recommended-scss to 14.1.0, and stylelint-scss to 6.8.1
* Update webpack-cli to 5.1.4
* Update style-loader to 4.0.0
* Change all Webpack scripts to be ES modules
* Update strip-ansi to 7.1.0
This is a build script dependency
* Update chalk to 5.3.0
This is a build script dependency
* Update concurrently to 9.0.1
This is a build script dependency
* Update smooth-scroll-into-view-if-needed to 2.0.2
* MM-48205 Update serialize-error to 11.0.3
We didn't update this before because it's an ES module which caused Jest to complain. We can fix that by making Jest transform the it
* Update semver to 7.6.3
* Update types for semver, tinycolor2, turndown, and webpack
* Fix type issues: change Props to a type
* Fix type issues: invalid HTML attributes
* Remove unneeded option from Webpack config
* shared channel event tracking
* Update notification.go
Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
---------
Co-authored-by: Miguel de la Cruz <miguel@mcrx.me>
* fix high vulnerability present in braces
* remove vulnerabilities from pdfjs-dis and update types for node and react
* adapt the pdf preview file to the lib new version
* lock the estree version to a compatible version
* use minified version of worker and adjust webpack to support extension for ESM module process
* get working the pdf preview
* adjust jest to use babel correctly
* override asn1.js lib to keep working version
* upgrade semver version to a secure version
* remove no longer needed changes
* fix linter issues
* fix merge conflicts
* sync package-lock
* fix conflicts
* adjust lock to npm ci