Entity Quick Actions
Entity Quick Actions UI Extension for Umbraco Commerce
Entity Quick Actions allow you to display a button directly in the entity editor screen for important actions that require instant access.

Registering a Quick Action
import { UcManifestEntityQuickAction } from "@umbraco-commerce/backoffice";
export const manifests : UcManifestEntityQuickAction[] = [
{
type: 'ucEntityQuickAction',
kind: 'default',
alias: 'My.EntityQuickAction.MyQuickAction',
name: 'My Quick Action Action',
weight: 300,
api: () => import('./my-quick-action.api.js'),
meta: {
entityType: 'uc:order',
label: "#quickActions_myQuickAction",
look: 'primary'
}
}
];
extensionRegistry.register(manifests);
Each entry must have a type of ucEntityQuickAction
along with a unique alias
and name
. Unless you wish to override the button, the kind
key should be set to default
. An api
key should be defined that imports the implementation of the UcEntityQuickActionApi
interface.
A meta
entry provides configuration options for quick actions:
entityType
The entity type for which this quick action should be displayed
label
A label for this quick action (supports the #
prefix localization string syntax)
look
Can be primary
for a highlighted button, or secondary
for a more muted button
The Entity Quick Action API
In order to define the logic to perform when a quick action button is clicked, you'll need to implement the UcEntityQuickActionApi
interface. This interface is defined as
export interface UcEntityQuickActionApi extends UmbApi {
manifest: UcManifestEntityQuickAction;
execute(): Promise<void>;
}
This provides quick action implementations with access to the defined manifest
and expects the implementation of an execute
method to act.
An example implementation would be
// my-quick-action.api.js
import { UcEntityQuickActionApi, UcManifestEntityQuickAction } from "@umbraco-commerce/backoffice";
import { UmbControllerBase } from "@umbraco-cms/backoffice/class-api";
export default class MyEntityQuickActionApi extends UmbControllerBase implements UcEntityQuickActionApi {
manifest!: UcManifestEntityQuickAction;
async execute() {
console.log("You clicked the My Quick Action");
}
}
Last updated
Was this helpful?