Skip to content
Merged
Show file tree
Hide file tree
Changes from 9 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
40 changes: 20 additions & 20 deletions 16/umbraco-cms/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,35 +154,35 @@
* [Extension Manifest](customizing/extending-overview/extension-registry/extension-manifest.md)
* [Replace, Exclude or Unregister](customizing/extending-overview/extension-registry/replace-exclude-or-unregister.md)
* [Extension Types](customizing/extending-overview/extension-types/README.md)
* [Sections](customizing/extending-overview/extension-types/sections/README.md)
* [Sections](customizing/extending-overview/extension-types/sections/section.md)
* [Section Sidebar](customizing/extending-overview/extension-types/sections/section-sidebar.md)
* [Section View](customizing/extending-overview/extension-types/sections/section-view.md)
* [Workspaces](customizing/extending-overview/extension-types/workspaces/README.md)
* [Workspace Actions](customizing/extending-overview/extension-types/workspaces/workspace-editor-actions.md)
* [Workspace Context](customizing/extending-overview/extension-types/workspaces/workspace-context.md)
* [Workspace Views](customizing/extending-overview/extension-types/workspaces/workspace-views.md)
* [Menu](customizing/extending-overview/extension-types/menu.md)
* [Header Apps](customizing/extending-overview/extension-types/header-apps.md)
* [Icons](customizing/extending-overview/extension-types/icons.md)
* [Block Custom View](customizing/extending-overview/extension-types/block-custom-view.md)
* [Bundle](customizing/extending-overview/extension-types/bundle.md)
* [Kind](customizing/extending-overview/extension-types/kind.md)
* [App Entry Point](customizing/extending-overview/extension-types/app-entry-point.md)
* [Backoffice Entry Point](customizing/extending-overview/extension-types/backoffice-entry-point.md)
* [Extension Conditions](customizing/extending-overview/extension-types/condition.md)
* [Block Custom View](customizing/extending-overview/extension-types/block-custom-view.md)
* [Bundle](customizing/extending-overview/extension-types/bundle.md)
* [Dashboards](customizing/extending-overview/extension-types/dashboard.md)
* [Entity Actions](customizing/extending-overview/extension-types/entity-actions.md)
* [Entity Bulk Actions](customizing/extending-overview/extension-types/entity-bulk-actions.md)
* [Entity Create Option Action](customizing/extending-overview/extension-types/entity-create-option-action.md)
* [Property Value Preset](customizing/extending-overview/extension-types/property-value-preset.md)
* [Trees](customizing/extending-overview/extension-types/tree.md)
* [Extension Conditions](customizing/extending-overview/extension-types/condition.md)
* [Global Context](customizing/extending-overview/extension-types/global-context.md)
* [Header Apps](customizing/extending-overview/extension-types/header-apps.md)
* [Icons](customizing/extending-overview/extension-types/icons.md)
* [Kinds](customizing/extending-overview/extension-types/kind.md)
* [Localization](customizing/extending-overview/extension-types/localization.md)
* [Menu](customizing/extending-overview/extension-types/menu.md)
* [Modals](customizing/extending-overview/extension-types/modals/README.md)
* [Confirm Dialog](customizing/extending-overview/extension-types/modals/confirm-dialog.md)
* [Custom Modals](customizing/extending-overview/extension-types/modals/custom-modals.md)
* [Modal Route Registration](customizing/extending-overview/extension-types/modals/route-registration.md)
* [Confirm Dialog](customizing/extending-overview/extension-types/modals/confirm-dialog.md)
* [Custom Modals](customizing/extending-overview/extension-types/modals/custom-modals.md)
* [Modal Route Registration](customizing/extending-overview/extension-types/modals/route-registration.md)
* [Property Value Preset](customizing/extending-overview/extension-types/property-value-preset.md)
* [Sections](customizing/extending-overview/extension-types/sections/README.md)
* [Section](customizing/extending-overview/extension-types/sections/section.md)
* [Section Sidebar](customizing/extending-overview/extension-types/sections/section-sidebar.md)
* [Section View](customizing/extending-overview/extension-types/sections/section-view.md)
* [Trees](customizing/extending-overview/extension-types/tree.md)
* [Workspaces](customizing/extending-overview/extension-types/workspaces/README.md)
* [Workspace Actions](customizing/extending-overview/extension-types/workspaces/workspace-editor-actions.md)
* [Workspace Context](customizing/extending-overview/extension-types/workspaces/workspace-context.md)
* [Workspace Views](customizing/extending-overview/extension-types/workspaces/workspace-views.md)
* [Extension Kind](customizing/extending-overview/extension-kind.md)
* [Extension Conditions](customizing/extending-overview/extension-conditions.md)
* [Custom Extension types](customizing/extending-overview/custom-extension-type.md)
Expand Down
114 changes: 100 additions & 14 deletions 16/umbraco-cms/customizing/extending-overview/extension-types/README.md
Original file line number Diff line number Diff line change
@@ -1,31 +1,117 @@
---
description: >-
The Extension types have some general features and some are provide
specifically to a type.
An overview of general extension types available in the Umbraco backoffice.
---

# Extension Types

### General features <a href="#package-manifest" id="package-manifest"></a>
## General Features

The general features of all Extension Types can be read as part of the [Extension Manifest Article](../extension-registry/extension-manifest.md)
Extension Types in Umbraco allow developers to extend and customize the behavior of the backoffice. Each type provides unique functionality, such as creating custom dashboards, enhancing entity actions, or enabling localization. Learn more about the shared properties and overall structure in the [Extension Manifest](../extension-registry/extension-manifest.md) article.

### General Extension Type <a href="#package-manifest" id="package-manifest"></a>
## Common Extension Types

The system provides Extension Types for certain needs and then there is a few that has a general purpose.
The **Umbraco backoffice** provides **Extension Types** designed to meet a variety of customization needs. These include extensions tailored for specific functionalities, as well as general-purpose extensions for broader use cases.

### [Bundle](bundle.md) <a href="#package-manifest" id="package-manifest"></a>
### [App Entry Point](app-entry-point.md)

The `bundle` type enables you to gather many extension manifests into one. These will be registered at startup.
The `App Entry Point` extension type is used to execute JavaScript when Umbraco starts up. The code will run before the user has logged in or the backoffice has initialized.

### [Backoffice Entry Point](backoffice-entry-point.md) <a href="#entry-point" id="entry-point"></a>
### [Backoffice Entry Point](backoffice-entry-point.md)

The `backofficeEntryPoint` type is used to execute the method of a JavaScript file when the backoffice is initialized. This file can be used to do anything, this enables more complex logic to take place on startup.
The `backofficeEntryPoint` extension type is used to execute JavaScript upon initialization of the backoffice. This extension type provides lifecycle hooks (startup, teardown) for extension developers to customize backoffice behavior.

### [Extension Conditions](condition.md) <a href="#conditions" id="conditions"></a>
### [Block Custom View](block-custom-view.md)

Most Extension Types support conditions. Defining conditions enables you to control when and where the Extension is available. This Type enables you to bring your own Conditions for the system.
The `blockEditorCustomView` extension type is used to define a custom web component for representing blocks inside the Umbraco block grid property editor.

### [Kinds](kind.md) <a href="#kinds" id="kinds"></a>
### [Bundle](bundle.md)

The Kind-type enables you to base your Extension registration on a preset manifest. A kind provides the base manifest that your manifest will be amending. A typical Kind declaration would provide a default Element, making it possible for you to only configure the Element via properties of the Manifest.
The `bundle` extension type is used to aggregate multiple extension manifests into a single entity, which will be registered at startup.

### [Dashboards](dashboard.md)

The `dashboard` extension type enables extension authors to create custom informational panels that can be displayed in the Umbraco backoffice. These extensions can be added to existing Umbraco sections or to a custom section.

### [Entity Actions](entity-actions.md)

The `entityAction` extension type is used to create menus for operations on an entity such as a document or media item. Built-in backoffice examples include: "Trash", "Duplicate to...", "Publish" etc.

### [Entity Bulk Actions](entity-bulk-actions.md)

The `entityBulkAction` extension type works similarly to the **Entity Actions** extension type, but performs the actions on a selection of entities from a collection.

### [Entity Create Option Action](entity-create-option-action.md)

The `entityCreateOptionAction` extension type is used to provide custom entity creation actions via a dedicated modal interface.

### [Extension Conditions](condition.md)

Most extension types support conditions which allow extension authors to control when and where the extension is available. This type enables extension authors to define their own conditions.

### [Global Context](global-context.md)

The `globalContext` extension type creates a custom context of data and functions, accessible throughout the entire backoffice and the entirety of the session.

### [Header Apps](header-apps.md)

The `headerApp` extension type is used to place single-purpose extensions in the top-level navigation bar. These extensions appear next to the user profile.

### [Icons](icons.md)

The `icons` extension type is used to make custom icon extension sets available in the Umbraco backoffice and in custom Umbraco UI components. Extension authors provide SVG files and register them using this extension type.

### [Kinds](kind.md)

The `kind` extension type is used to create custom extension configurations to be used as the basis of other custom extension types. They can be inherited by other extension types.

### [Localization](localization.md)

The `localization` extension type is used to register additional languages and files of translation strings that can be used in Umbraco backoffice extensions.

### [Menu](menu.md)

The `menu` extension type is used to create custom menus. These can be placed in sidebar extensions or displayed as a fly-out from a button, header, or workspace view.

### [Modals](modals/README.md)

The `modal` extension type is used to configure and present dialogs and sidebars within the Umbraco backoffice.

### [Property Value Preset](property-value-preset.md)

The `propertyValuePreset` extension type is used to customize the default value of a property editor and allow for dynamic behavior through hooks.

### [Sections](sections/README.md)

The `section` extension type is used to place top-level navigation items within the Umbraco backoffice. Custom Section extensions appear alongside Content, Media, Settings, and others, as seen in the purple navigation bar.

### [Trees](tree.md)

The `tree` extension type is used to create a hierarchical structure composed of nodes, such as documents or media extensions or toolbar extensions.
items.

### [Workspaces](workspaces/README.md)

The `workspace` extension type provides functionality that operates within specific workspace environments, such as document editing, media management, or member editing.

## Even More Extension Types

### [Property Level UI Permissions](../../property-level-ui-permissions.md)

Umbraco allows system administrators to define read and write permissions on an individual property basis. `Property Level UI Permissions` can be created to define customized rules to fit any use case.

### [Tip-Tap Extensions](../../../fundamentals/backoffice/property-editors/built-in-umbraco-property-editors/rich-text-editor/extensions.md)

The Tip-Tap editor is the default text editor in Umbraco. Tip-Tap can be extended with either native extensions or toolbar button extensions.

### [Umbraco Flavored Markup Components](../../../reference/umbraco-flavored-markdown.md)

`Umbraco Flavored Markup (UFM) Components`, are used to create descriptions and labels for entities across the backoffice. These replace the previous "Label Property Configuration" feature. Extension authors can create custom components that go beyond textual labels, including creating hooks that allow for imperative programming tasks and custom markup.

## Extension Insights Browser

Umbraco provides a number of additional extension types that can be used to extend the backoffice. The backoffice contains an interactive browser for exploring all available extension types. This feature also allows users to confirm that their own backoffice extensions are found and loaded by the backoffice.

To use the Extension Insights browser, navigate to the **Settings** section of the backoffice and select **Extension Insights** from the sidebar. A comprehensive list of available types can be found in the dropdown menu to the right.

<figure><img src="../../../.gitbook/assets/extension-types-backoffice-browser.png" alt=""><figcaption><p>Backoffice extension browser</p></figcaption></figure>
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ The following Manifest declares a preset for the `Umb.PropertyEditorUi.TextBox`

```typescript
export const manifest = {
type: 'propertyValuePreset';
type: 'propertyValuePreset',
alias: 'my.propertyValuePreset.TextBox',
name: 'My Property Value Preset for TextBox',
api: () => import('./my-property-value-preset.js'),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
description: A guide to creating a section
---

# Sections
# Section

{% hint style="warning" %}
This page is a work in progress and may undergo further revisions, updates, or amendments. The information contained herein is subject to change without notice.
Expand Down
Loading