2.0.1 • Published 4 months ago

@tridion-sites/extensions v2.0.1

Weekly downloads
-
License
SEE LICENSE IN LI...
Repository
-
Last release
4 months ago

Tridion Sites Extensions API

@tridion-sites/extensions provides an API for frontend extensions for Tridion Sites.

Getting Started

All extensions export an ExtensionModule object. The initialize function on this object receives an ExtensionBuilder from Tridion Sites as its argument, which gives a developer access to the extensions API.

Common functionality

This functionality can be used in any extension point and is available throughout the application.

Hooks

NameDescriptionExample
useConfirmationOpens a confirmation dialog with the provided optionsuseHelloAction
useNotificationsProvides ability to show notifications and save them in Message CenteruseHelloAction
useUserProfileProvides access to the current user profile informationuseHelloAction

Components and styling

Components and style constants are provided so extensions can maintain a consistent look & feel with Tridion Sites.

Layout

💡 Tip: Layout components have an exposed className prop. This allows custom styles to be added via styled-components or CSS modules.

NameDescriptionExample
BlockUsers List Item
CenterSchema Purpose Column
FlexNumber Field
StackUsers List

Other components

NameDescriptionExample
Button
IconSmile Icon
Link
TextNumber Field
TextLinkItem Link

Style constants

NameDescriptionExample
getBorderRadiusHex Color Picker
getColorPalette
getOpacityLevel
getSpacing
getTransitionDuration
getZIndex

Data loading

Mutations and queries provide a way to requires Tridion Sites data. They operate with model instances of @tridion-sites/models package rather than simple objects of @tridion-sites/open-api-client.

💡 Tip: Mutations and queries share cached data between the host application and extensions. This means that if provided request was already loaded somewhere else - it is going to be retrieved from the cache if applicable.

Queries

Queries provide a way of retrieving data from the backend as well as managing its loading and reloading.

NameDescriptionExample
useActivityInstancesQuery
useDefaultTranslationJobQuery
useFavoritesQuery
useItemBlueprintHierarchyQuery
useItemChildrenQuery
useItemClassifiedItemsQuery
useItemDefaultDataQuery
useItemHistoryQuery
useItemPublishedPagesQuery
useItemPublishedToQuery
useItemPublishUrlsQuery
useItemQueryWork Items Popover
useItemsInProgressQuery
useItemsQuery
useItemsToPublishQuery
useItemsToUnpublishQuery
useItemTranslationInfoQuery
useItemUsedByQuery
useItemUsesQuery
usePublicationBlueprintHierarchyQuery
usePublicationsQuery
usePublishableTargetTypesQuery
useSearchInContainerQuery
useSystemSearchQuery
useUserGroupsQuery
useUserProfileQuery
useUsersQueryUsers Page

Mutations

Mutations provide a way of changing data on the backend as well as handling request execution.

NameDescriptionExample
useAddToBundleMutation
useAssignActivitiesMutation
useAssignActivityMutation
useAutoClassifyItemMutation
useAutoClassifyItemsMutation
useChangeUserLanguageMutationChange Language to Dutch Action
useChangeUserLocaleMutation
useCopyItemMutation
useCopyItemsMutation
useCreateTranslationJobMutation
useDeleteItemMutation
useDeleteItemsMutation
useFinishActivitiesMutation
useFinishActivityMutation
useFinishEditingItemMutation
useFinishEditingItemsMutation
useLocalizeItemMutation
useLocalizeItemsMutation
useMoveItemMutation
useMoveItemsMutation
usePublishItemsMutation
useRemoveFromBundleMutation
useRestartActivitiesMutation
useRestartActivityMutation
useRevertItemMutation
useRevertItemsMutation
useRollbackItemMutation
useStartActivitiesMutation
useStartActivityMutation
useStartWorkflowMutation
useUnlocalizeItemMutation
useUnlocalizeItemsMutation
useUnpublishItemsMutation
useUpdateItemMutation
useUploadMultimediaMutation

Data Contexts

Tridion Sites contains nested data contexts. All extension points and hooks exist within a data context. Within any given data context, one can access both the data in that context and any parent data contexts. It is important to note where an extension is located to determine what data it can access.

💡 Tip: Some extensions might appear in multiple places. Hooks with optional contexts are provided for this purpose.

  • Activities Explorer
    • Activities Explorer Table
  • Content Explorer
    • Content Explorer Table
    • Content Explorer Tree
  • Content editors
    • Bundle editor
    • Category editor
    • Component editor
    • Folder editor
    • Keyword editor
    • Page editor
    • Structure Group editor
2.0.1

4 months ago

1.0.2

10 months ago

1.0.1

10 months ago

1.0.0

10 months ago

2.0.0

6 months ago

1.0.3

10 months ago

0.5.4

11 months ago

0.5.3

11 months ago

0.5.2

11 months ago

0.5.1

12 months ago

0.5.0

1 year ago