66 Commits

Author SHA1 Message Date
Michael Telatynski
e663479ab4
Iterate patch
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-24 17:20:59 +00:00
Michael Telatynski
3802f6c150
Iterate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-24 16:51:03 +00:00
Michael Telatynski
5ea477eca8
Consolidate linters
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-24 12:57:31 +00:00
Michael Telatynski
9185f666e0
Consolidate package.json/dependencies
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-24 12:52:59 +00:00
RiotRobot
eb8ca0bf5d Reset matrix-js-sdk back to develop branch 2026-03-24 11:30:21 +00:00
R Midhun Suresh
99e6ede9f1
Implement collapsible panels for the new room list (#32742)
* Add `react-resizable-panels` library

* Implement a custom SeparatorView

* Add a `LeftResizablePanelView`

* Add a custom `GroupView`

* Export everything from shared-components

* Make it possible to track width/collapse state through settings

* Add a view model to drive the views

* Render views without disrupting the old room list

* Fix lint error

* Disable user interaction on collapsed panel

* Prevent widgets fron hijacking pointer events

* Expand to full width on separator click

* Separator should be shown when focused via keyboard

* Update tests

* Use data-attribute for hover

* Write stories for SeperatorView

* Write vite tests for SeparatorView

* Write tests for LeftResizablePanelView

* More tests

* Fix lint errors

* Fix flakey border on the roomlst

* Fix storybook axe violation

* Update snapshots

* Fix playwright tests

* Fix sonarcloud issues

* Use translated string

* Add better js-doc comments

* Rename `ResizerSnapshot` to `ResizerViewSnapshot`

* Externalize react-resizable-panels

* Link figma designs to stories

* Write playwright tests

* Update screenshots

* Fix lint errors

* Update more screenshots

* Update more screenshots

* Fix flaky toast test

* Update apps/web/playwright/e2e/crypto/toasts.spec.ts

Co-authored-by: Andy Balaam <andy.balaam@matrix.org>

* Fix indentation

---------

Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
2026-03-23 13:33:32 +00:00
renovate[bot]
3c23fd21ac
Update npm non-major dependencies (#32843)
* Update npm non-major dependencies

* Update knip patch

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Make knip happy

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-20 19:41:13 +00:00
renovate[bot]
6a8aaa3798
Update dependency vite to v8 (#32866)
* Update dependency vite to v8

* Update vitest.config.ts

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Vite 8 migration

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-20 18:33:45 +00:00
renovate[bot]
16b12dea95
Update dependency webpack-cli to v7 (#32847)
* Update dependency webpack-cli to v7

* Remove stale webpack cli args

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-20 16:11:11 +00:00
renovate[bot]
793c4ff110
Update css (#32552)
* Update css

* Patch weak types in postcss-mixins

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-20 15:17:07 +00:00
renovate[bot]
b2c19d4ed9
Update dependency caniuse-lite to v1.0.30001780 (#32835)
* Update dependency caniuse-lite to v1.0.30001780

* Update test

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-20 13:56:25 +00:00
renovate[bot]
1493e41c29
Update dependency eslint-plugin-storybook to v10.2.19 (#32836)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 11:16:09 +00:00
renovate[bot]
9aa0004c10
Update vite to v4.1.0 (#32865)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 10:29:26 +00:00
renovate[bot]
8feac6335d
Update jest to v30.3.0 (#32842)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 09:18:13 +00:00
renovate[bot]
46a46dff59
Update dependency @matrix-org/analytics-events to ^0.33.0 (#32839)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 09:18:03 +00:00
renovate[bot]
faea5f4efc
Update storybook to v10.2.19 (#32837)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 08:56:48 +00:00
renovate[bot]
97309330fa
Update dependency @vector-im/compound-design-tokens to v7 (#32845)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-17 14:34:57 +00:00
Robin
6339bcda15
Upgrade Element Call for new picture-in-picture designs (#32816) 2026-03-17 08:57:37 +00:00
David Baker
09bbf796dc
Add support for Widget & Room Header Buttons module APIs (#32734)
* Add support for Widget & Room Header Buttons module APIs

To support https://github.com/element-hq/element-modules/pull/217

* Update for new api

* Test addRoomHeaderButtonCallback

* Extra mock api

* Test for widgetapi

* Convert enum

* Convert other enum usage

* Add tests for widget context menu move buttons

Which have just changed because of the enum

* Add tests for moving the widgets

* Fix copyright

Co-authored-by: Florian Duros <florianduros@element.io>

* Update module API

* A little import/export

---------

Co-authored-by: Florian Duros <florianduros@element.io>
2026-03-13 13:44:18 +00:00
Will Hunt
c02db4ebb8
Port over linkifyJS to shared-components. (#32731)
* Port over linkifyJS to shared-components.

* Drop rubbish

* update lock

* quickfix test

* drop group id

* Modernize tests

* Remove stories that aren't in use.

* Complete working version

* Add copyright

* tidy up

* update lock

* Update snaps

* update snap

* undo change

* remove unused

* More test updates

* fix typo

* fix margin on preview

* move margin block

* snapupdate

* prettier

* cleanup a test mistake

* Fixup sonar issues

* Don't expose linkifyjs to applications, just provide helper functions.

* Add story for documentation.

* remove $

* Use a const

* typo

* cleanup var name

* remove console line

* Changes checkpoint

* Convert to context

* Revert unrelated change.

* more cleanup

* Add a test to cover ignoring incoming data elements

* Make tests happy

* Update tests for LinkedText

* Underlines!

* fix lock

* remove unused linkify packages

* import move

* Remove mod to remove underline

* undo

* fix snap

* another snapshot fix

* Tidy up based on review.

* fix story

* Pass in args
2026-03-12 15:54:01 +00:00
RiotRobot
652b9f5b5b Reset matrix-js-sdk back to develop branch 2026-03-10 14:06:59 +00:00
Michael Telatynski
35afc2fdf8
Implement customisations & login component Module API 1.11.0 (#32687)
* Update to Module API v1.11.0

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Remove stale state field to make CQL happy

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Bump npm dep

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Improve coverage

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Improve coverage

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update comment

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-10 13:30:48 +00:00
Zack
8d076c897d
Refactor EventContentBody to shared-components (#31914)
* Init of refactoring of eventcontentbody

* update stories css by copying css from element x to shared components

* Replaced old component EventContentBody with newly created mmvm component EventContentBodyViewModel

* Refactor TextualBody and EditHistoryMessage to properly manage EventContentBodyViewModel

* generated snapshot after vitest

* Update import placement for eslint to pass CI

* Fixed lint warnings

* Update css for codeblock to represent js highlight

* test: add EventContentBodyViewModel snapshot coverage

* fix: pass content ref to EventContentBodyView for link previews

* Fix: return to old code that passed tests

* Added storybook snapshots

* Removal of old component that is being unused

* Update snapshot

* Fix missing enableBigEmoji and shouldShowPillAvatar settings in EventContentBodyViewModel

* update snapshot

* narrow setProps to mutable fields and skip no-op snapshot recomputes

* Update Snapshots

* replace EventContentBodyViewModel setProps with explicit setters and update call sites

* render body in view and keep parser/replacer in snapshot

* Eslint Restruct

* Eslint Restructure

* Removed unused function, moved to shared component

* Remove Unused Module (Moved To Shared Component)

* Disable EventContent-body Test to check weather it fixes CI

* Enable EventContentBody Tests

* Remove EventTest

* Update Include in Vitest

* Added EventContentBody test

* Update Package.json

* Update Lockfile

* Update dependencies

* update lockfile

* ptimize EventContentBodyViewModel to recompute/merge only changed snapshot fields

* Update snapshots

* setEventContent and setStripReply run whenever the existing update block runs

* defined arrow functions for undefined runtime issues that might occur.

* Update test cases

* Update packages/shared-components/src/message-body/EventContentBody/EventContentBodyView.tsx

Co-authored-by: R Midhun Suresh <rmidhunsuresh@gmail.com>

* Update packages/shared-components/src/message-body/EventContentBody/EventContentBodyView.tsx

Co-authored-by: R Midhun Suresh <rmidhunsuresh@gmail.com>

* move big-emoji and pill-avatar setting watchers into EventContentBodyViewModel

* Update packages/shared-components/src/message-body/EventContentBody/index.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Update packages/shared-components/src/message-body/EventContentBody/EventContentBodyView.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Update packages/shared-components/src/message-body/EventContentBody/EventContentBody.test.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Update packages/shared-components/src/message-body/EventContentBody/EventContentBody.stories.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Update packages/shared-components/src/message-body/EventContentBody/EventContentBodyView.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Update packages/shared-components/src/message-body/EventContentBody/EventContentBodyView.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Fix dubblicate variables

* clarify applyReplacerOnString input/replacer params

* Added memo to the view

* Prettier Fix

* Update apps/web/src/viewmodels/message-body/EventContentBodyViewModel.ts

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Added compund variables instead of reguler values

* Added boolean default values

* remove redundant setting props from TextualBody and EditHistoryMessage

* Prettier FIx

* replace MatrixClientPeg usage with `client: MatrixClient | null` passed from context

* TextualBody now passes EventContentBodyViewModel `client` from RoomContext.

* Remove redundant as prop from EventContentBody VM usage

* Normalize EventContentBodyViewModel renderer flags to booleans

---------

Co-authored-by: R Midhun Suresh <rmidhunsuresh@gmail.com>
Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
2026-03-09 09:58:05 +00:00
Michael Telatynski
32037b0135
Make knip happier (#32721)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-05 21:42:08 +00:00
renovate[bot]
ac37bebf22
Update dependency caniuse-lite to v1.0.30001774 (#32549)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 19:42:28 +00:00
renovate[bot]
49dffe83cc
Update dependency @vector-im/compound-design-tokens to v6.10.1 (#32698)
* Update dependency @vector-im/compound-design-tokens to v6.10.1

* Update snapshots

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-03 19:17:40 +00:00
renovate[bot]
2c9f55cbea
Update npm non-major dependencies (#32702)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 18:19:50 +00:00
renovate[bot]
e19e338aa9
Update dependency @sentry/webpack-plugin to v5 (#32704)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 17:41:57 +00:00
renovate[bot]
3f69aec64a
Update dependency css-minimizer-webpack-plugin to v8 (#32706)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 17:41:05 +00:00
David Langley
cea684c065
Implement new widget permissions module api (#32565)
* Add widget lifecycle API at top level

* Integrate while still falling back to the legacy api

* Remove WidgetKind

* Update module api

to the one that includes the new widget lifecycle api

* lint

* Make preload checks easier to understand

- Have single code path for preload checks.
- Remove duplicated logic for preapproveIdentity check
- Fix headers

* lint
2026-03-03 17:06:39 +00:00
renovate[bot]
611e924dc2
Update dependency wrap-ansi to v10 (#32707)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 17:04:28 +00:00
renovate[bot]
e439d6adc1
Update eslint-plugins (#32701)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 16:51:43 +00:00
renovate[bot]
255f9f03e9
Update dependency wrap-ansi-cjs to v10 (#32708)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 14:52:23 +00:00
renovate[bot]
580949038c
Update dependency copy-webpack-plugin to v14 (#32705)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 14:41:05 +00:00
renovate[bot]
ba0365d04e
Update storybook to v10.2.13 (#32699)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 14:40:40 +00:00
renovate[bot]
b0e12b829f
Update typescript (#32700)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-03 14:40:39 +00:00
David Baker
738fa0f9bd
Add resolution for serialize-javascript to force new version (#32683)
terser-webpack-plugin depends on ^6 but there's a CVE that's only
fixed in version 7. The CVE probably isn't terribly important for
a dependecy only used for building but it's breaking the dependabot
job which breaks our CD.

https://github.com/webpack/terser-webpack-plugin/issues/644 is the bug
tracking upgrading the dependency upstream.
2026-03-02 16:39:55 +00:00
rbondesson
11030ae68d
Refactor DateSeparator using MVVM and move to shared-components (#32482)
* Refactor DateSeparator using MVVM and move to shared-components

* Add a few more stories, tests and screenshots

* Use the shared component and viewmodel in element-web

* Renaming custom content property an updating snapshots

* Fix lint errors and update snapshot after merge

* Change lifecycle handling for DateSeparatoreViewModel in components where manual handling is preferrable over wrapper component.

* Move context menu from viewmodel to shared components - step 1

* Create a jump to date picker component in shared components

* Add tests for coverage and fix layout issues and roving indexes

* Make element-web use the new component

* Simplify context menu and adjusting tests

* The HTMLExport now render shared components and need a I18nContext.Provider

* Updating unit tests for context menu

* Changed to {translate: _t} to let scripts pick up translations

* Fix lint issue and updating screenshots after merge

* Update snaps for element web components

* Renaming MVVM view components with suffix View.

* Fixing problem with input date calendar icon and system dark theme

* Changed the rendering of the menu and added a separate button component

* Handle input control with useRef in onKeyDown

* Updating DateSeparator snapshots on unit tests

* Updating layout after compound Menu got a className property

* Move files to new subfolder after merge

* Updated snapshot after merge

* Updating lock file

* Updates to styling from PR review

* Updates to focus/blur functionality

* Fixed tabbing and export documentation to stories

* Updated snapshots

---------

Co-authored-by: Zack <zazi21@student.bth.se>
2026-03-02 12:18:51 +00:00
Valere Fedronic
a5b63d582f
widget-api: Implement driver readStickyEvents (#31872)
* widget-api: Implement driver `readStickyEvents`

* Bump matrix widget api version to get new driver interface

* review: add comment about capabilitiesm check

* bump matrix-widget-api version to ^1.17.0
2026-02-27 15:15:15 +00:00
Michael Telatynski
0a308743b8
Rewrite copy-res i18n build as a webpack plugin (#32664)
* Replace copy-res with a webpack plugin

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Specify writeToDisk=true for webpack-dev-server

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Use async fs methods

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-27 13:00:25 +00:00
renovate[bot]
3fb99fee26
Update dependency storybook to v10.2.10 [SECURITY] (#32657)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-26 20:59:53 +00:00
Will Hunt
f82a3ef1bb
Update critical gradient for room status bar (#32575)
* Update critical gradient for room status bar

As per design request, this has been updated to be much more subtle
https://github.com/element-hq/compound-design-tokens/pull/232

* update shared-component

* Cleanup

* Update snaps

* description fix color

* More cleanup

* Use the correct border color

* new snaps

* fix border, button placement, fonts etc

* update lock

* Update status bar

* Update playwright snaps

* Update snap icon

* Update other banners

* update snap

* fixup
2026-02-26 15:10:54 +00:00
Michael Telatynski
ee8094ded6
Update pnpm-lock.yaml
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-24 21:27:04 +00:00
Michael Telatynski
7a0ed5443f
Remove rimraf (#32618)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-24 10:05:18 +00:00
Michael Telatynski
77670eb369
Add lint rule to protect against this access on unbound methods (#32578)
* Add Actions to ViewModel utility types and specify `this: void` signature

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Add https://typescript-eslint.io/rules/unbound-method/ linter to shared-components

also fix stray lint config which doesn't apply to SC

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Add https://typescript-eslint.io/rules/unbound-method/ linter to element-web

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Fix genuine issues identified by the linter

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Specify this:void on i18napi

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update Module API

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Add comment for MapToVoidThis

Added utility type to map VM actions to unbound functions.

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-23 15:37:58 +00:00
renovate[bot]
352feb2787
Update dependency eslint-plugin-storybook to v10.2.10 (#32553)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-22 14:05:36 +00:00
renovate[bot]
2d223472d0
Update storybook (#32551)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-20 15:16:55 +00:00
Michael Telatynski
13a8647085
Ensure we use Inter font in Shared Components Storybook (#32584)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-20 10:08:19 +00:00
Michael Telatynski
af46f689f8
Bump transitive dev deps to silence security warnings (#32579)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-20 09:56:17 +00:00
Michael Telatynski
6363899f2c
Bump js-sdk lock
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-20 09:05:01 +00:00