Frontend
UmbNav's backoffice UI is built with TypeScript and Lit web components. You can extend it by registering custom extensions or subclassing components.
Getting Started
Importing the API
import {
UmbNavExtensionRegistry,
UmbNavToolbarAction,
UmbNavItemSlot,
ModelEntryType,
UmbNavActionContext
} from '/App_Plugins/UmbNav/dist/api.js';Creating an Extension Package
// my-extension/src/index.ts
import { UmbNavExtensionRegistry } from '/App_Plugins/UmbNav/dist/api.js';
import { html } from '@umbraco-cms/backoffice/external/lit';
// Register extensions when the module loads
UmbNavExtensionRegistry.registerToolbarAction({
alias: 'my-extension-star',
label: 'Star',
icon: 'icon-favorite',
onExecute: (item, context) => {
console.log('Starred:', item.name);
}
});Extension Types
Toolbar Actions
Item Slots
Custom Item Types
Component Subclassing
Available Exports
Extension Registry
Types
Components
Styles
Modal Tokens
The Action Context
Using the Context
Best Practices
1. Use Unique Aliases
2. Check Visibility
3. Handle Async Operations
4. Error Handling
5. Subscribe to Changes
Last updated
Was this helpful?