* Fix type imports * Fix jsdoc * Fixup types * Fix stray awaits on non-thenables * Fixup imports * Fix splats * Fix this-context on callbacks * Memoise react contexts * Prefer find/flatMap * Make oxlint happier about our React keys * Avoid unsafe default function params * Fixup jsdoc * Fixup contexts * Switch from eslint to oxlint * Some oxlint-related tweaks * Iterate * Partial revert to defer some changes and shrink diff * Iterate * Add eslint-plugin-element-call and enable the copyright rule * Set strictStorePkgContentCheck * Iterate * Make sonar happy * Fix new lints
@element-hq/element-web-module-banner
Banner module for Element Web. Allows rendering a top bar with slide out left panel menu.
Supports the following configuration options:
| Key | Type | Description |
|---|---|---|
| logo_url | string | URL to the logo to render in the banner |
| logo_link_url | string | URL to send the user to when clicking the logo in the banner |
| title | string | The title to render next to the logo, falls back to top level brand variable if unspecified. |
| menu | Menu |
Data to render in the banner menu |
The Menu type is fulfilled by the following discriminated union:
Univention menu
| Key | Type | Description |
|---|---|---|
| type | "univention" | The type for this menu config |
| ics_url | string | URL to the UCS Intercom Service, https://docs.software-univention.de/intercom-service/latest/architecture.html#endpoints |
Static menu
| Key | Type | Description |
|---|---|---|
| type | "static" | The type for this menu config |
| logo_url | string, optional | URL to the logo to render in the menu, defaults to banner logo if omitted |
| categories | []Category |
Categories to render in the menu |
The Category type is fulfilled by the following interface:
| Key | Type | Description |
|---|---|---|
| name | string | The name of this category |
| links | []Link |
Links to render in this category |
The Link type is fulfilled by the following interface:
| Key | Type | Description |
|---|---|---|
| icon_uri | string | URL to the icon to render for this link |
| name | string | The name to render for this link |
| link_url | string | The URL to link to |
| target | string, optional | The target to use for this link |
Copyright & License
Copyright (c) 2025 New Vector Ltd
This software is multi licensed by New Vector Ltd (Element). It can be used either:
(1) for free under the terms of the GNU Affero General Public License (as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version); OR
(2) under the terms of a paid-for Element Commercial License agreement between you and Element (the terms of which may vary depending on what you and Element have agreed to). Unless required by applicable law or agreed to in writing, software distributed under the Licenses is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the Licenses for the specific language governing permissions and limitations under the Licenses.