* Don't reference the notification levels by colour
We're about to change what colours they are so either we'd have to rename
a bunch of constants. We may as well make things not reference what colour
anything is in the actual UI. Hopefully these constants are clear enough.
* Rename NotificationColor -> NotificationLevel
* Red -> Highlight
* Grey -> Notification
* Bold -> Activity
* Anywhere else that calls it 'color' -> 'level'
Also fixes some weird mixes of US & UK English.
It turns out this is referenced in... quite a lot of places, so this is
quite a large PR. It can't really be much smaller, sorry.
* One test rename & some hiding due to ts-ignore
* More hiding behind ts-ignore
* Damn you, @ts-ignore...
* Fix test CSS values
* Missed some colour -> level
Co-authored-by: Florian Duros <florianduros@element.io>
* Change other instances of variables renamed in suggestion
* Update new test for renames
---------
Co-authored-by: Florian Duros <florianduros@element.io>
* Rewrite doesRoomOrThreadHaveUnreadMessages to use the receipt rewrite from js-sdk
* Remove unit tests that rely on receipt timestamps
Previously, if we found a receipt for an unknown event, we would use the
receipt timestamp and declare all events before that time to be read.
Now, we ignore such "dangling" receipts until we find the event they
refer to.
This new behaviour is more correct, but does lead to more messages being
considered unread.
This commit deletes tests that checked for the old behaviour.
* Check for a missing thread in determineUnreadState
* Fix incorrect way to find room timeline
* More realistic test setup to support new receipt code
* Update snapshot to expect a room to be unread when there are no receipts
* Formatting fixes
* Update snapshot to show menu and notif button
* Disable some flaky tests
* Disable some flaky tests
* Fix test to make a threaded receipt for an event that is actually in the thread
---------
Co-authored-by: Florian Duros <florianduros@element.io>
Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
* Switch to importing TypedEventEmitter from main js-sdk export
* Switch to importing js-sdk/matrix in cypress
* Remove duplicated imports
* Fix lint:js-fix to run prettier last otherwise ESLint --fix may cause a mess
* Add lint rule
* Switch to importing models/Room from main js-sdk export
* Fix cypress-axe import
* Fix more imports
* Fix cypress-axe import
* Fix duplicated lint rule