* add disabler elative dates setting
Signed-off-by: Kerry Archibald <kerrya@element.io>
* test existing DateSeparator
Signed-off-by: Kerry Archibald <kerrya@element.io>
* use full date format when TimelineDisableRelativeDates is truthy
Signed-off-by: Kerry Archibald <kerrya@element.io>
* add comment
Signed-off-by: Kerry Archibald <kerrya@element.io>
* flip timelineDisableRelativeDates -> timelineEnableRelativeDates to fit convention
Signed-off-by: Kerry Archibald <kerrya@element.io>
* mock date constructor in test
Signed-off-by: Kerry Archibald <kerrya@element.io>
* Add matrix-analytics-events as a dependency
* Make IEvent look like a stub definition
* Update pageview tracking to track screens, using a hypothetical definition of a screen event
* Remove distinction between pseudo and anon tracking, will need to rework it considering stubs
Adds maplibre as a dependency, and behind a labs flag, lets users send and receive [MSC3488](https://github.com/matrix-org/matrix-doc/blob/matthew/location/proposals/3488-location.md) style location shares - with backwards compatibility with old school `m.location` `msgtype` location shares too.
For this to work, you have to define a valid maptile server and API in your config.json's `map_style_url`.
* Add a new flag pseudonymousAnalyticsOptIn replacing analyticsOptIn, stored at account level, so people only need to opt in once.
* Show a toast in login to users that have analyticsOptIn set but not yet pseudonymousAnalyticsOptIn prompting them confirm the new method is okay. Update the copy of the existing opt-in toast. Don't notify users that previously opted out.
* Update the copy in settings
* Add a new learn more dialog
* Support a new config flag analyticsOwner which is used in these toasts when explaining which entity the data is sent to ("Help improve %(analyticsOwner)"). If unset, display brand. This allows deployments whose brand differs from the receiver of the analytics to explain the situation to their users (e.g. AcmeCorp badges their app, but explains the data is sent to Element, not them)
* The new opt-in and flags are only used when posthog is configured; prior to that there are no changes to UX or tracking behaviour.
* sharedInstance() -> instance
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use CallState event instead of dispatching
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Simplifie some code
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use a method to start a call instead of the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use a method instead of place_conference_call
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Make terminateCallApp() and hangupCallApp() public
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use hangupAllCalls() instead of the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Make dialNumber(), startTransferToMatrixID() and startTransferToPhoneNumber() public instead of using the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use answerCall() instead of using the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Use hangupOrReject() instead of the dispatcher
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Update docs
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Improve TS
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Dispatch call_state, see https://github.com/vector-im/element-web/pull/18823#issuecomment-917377277
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Add missing import
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
* Move user avatar to Space panel
* Add room list header for 'Home' or 'Space Name' to room list
Add existing Space context menus to room list header
* Re-add pending room join spinner
* Iterate RoomListHeader plus context menu
* Iterate space context menu
* Iterate room list + interactions
* Move DND to new iA model
* Replace composer custom status management with usermenu one
* Cull Quick Actions
* Iterate minimized room list state
* delint
* Merge the RoomListNumResults into the RoomListHeader
* Make the search shortcut prompt semi-bold
* Iterate RoomListHeader based on design review
* Iterate UserMenu based on feedback
* Add name to expanded spacepanel usermenu button
* i18n
* Make room sub list aux button components more generic
* Change left panel explore button to only refer to room directory
* Iterate RoomListHeader
* Fix custom user status input field width in Chrome
* Bring back Notification settings button
* delint
* i18n
* post-merge fix
* iterate pr
* Remove unused state
* update copy
* Apply suggestions from PR review
* delint
* Update invite iconography
* Iterate Space context menu to match Figma
* Fix chevron alignment
* Fix edge case for RoomListHeader on metaspaces
* Wire up general rageshake-driven feedback mechanism
* Add IA1.1 info toast
* add missing alt attribute
* delint
* delint
* tweak ia toast priority
* e2e test account for new toast
* autofocus feedback field and remove old subheading
* tweak copy
* Iterate space panel colours to match Figma
* Iterate PR
* delint
* Fix feedback submission with object setting values
* iterate based on review
* Tweak colours and update splash image
* Tweaks based on review
* Remove room list prompt, made redundant by the big fat `+`
* Fix edge cases around User Menu positioning and dnd
* Add missing import, bad merge?
* Update aria label in e2e test
* Fix room list space rooms context menu explore button behaviour
* Tweak copy
* Revert order of options in the UserMenu
* Tweak copy
* i18n