Last date modified: 2026-Jul-14

Interface: IExtensionConfig

Defines a Relativity Review extension and its behavior

Properties

cards?

readonlyoptionalcards: ICardConfig[]

The card configuration(s)


contentHighlighting?

readonlyoptionalcontentHighlighting: IContentHighlightingFeatureConfig[]

Experimental

Content highlighting feature configurations

This is an experimental API and not ready for production use. Expect breaking changes in the future.


id

readonlyid: string

Globally unique extension ID

We suggest using a format that includes your company name and an extension identifier

Copy
"examplecompany.testextension"

isEnabled()?

readonlyoptionalisEnabled: () => boolean | Promise<boolean>

Optional callback to determine if the extension should be enabled

This callback is invoked during extension registration. If it returns false, the extension will not be registered and its status will be set to Disabled.

Supports both synchronous and asynchronous implementations.

Returns

boolean | Promise<boolean>

true to enable the extension, false to disable it

Copy
// Synchronous example
isEnabled: () => {
  return someSynchronousCheck === true;
}

// Asynchronous example
isEnabled: async () => {
  const settings = await fetchSettings();
  return settings.enableExtension;
}

itemListFieldValueTransforms?

readonlyoptionalitemListFieldValueTransforms: IItemListFieldValueTransform[]

List of item list field value transforms to be used when rendering item lists


itemLoadTransforms?

readonlyoptionalitemLoadTransforms: IItemLoadTransform[]

Defines the configuration for an item load transform on a given viewer type


lifecycle?

readonlyoptionallifecycle: IExtensionLifecycle

Application lifecycle event handlers

These can be used to optionally configure your extension to execute custom code.


name

readonlyname: string

User-friendly name for the extension

Copy
"Example Company Test Extension"

rtcMessageHandlers?

readonlyoptionalrtcMessageHandlers: IRTCMessageHandler[]

List of IRTCMessageHandler objects to catch and handle real time communication messages sent to the browser


smartHighlights?

readonlyoptionalsmartHighlights: ISmartHighlightExtensionConfig[]

The smart highlights cards to add


viewerCollectionFooterControls()?

readonlyoptionalviewerCollectionFooterControls: (api, viewerCollectionFooter, viewerCollection) => Promise<void>

List of toolbar controls to be added to the viewer collection footer

Parameters

api: IReviewInterfaceApi

viewerCollectionFooter: IToolbar

viewerCollection: IViewerCollection

Returns

Promise<void>


viewerContextMenus()?

readonlyoptionalviewerContextMenus: (api, viewerType) => IContextMenuItemConfig[]

List of context menu items to be added for the specific ViewerType

Parameters

api: IReviewInterfaceApi

viewerType: string

Returns

IContextMenuItemConfig[]


viewers?

readonlyoptionalviewers: IViewerCardConfig[]

Experimental

Custom viewer type definition(s)

This is an experimental API and not ready for production use. Expect breaking changes in the future.


viewerToolbarControls()?

readonlyoptionalviewerToolbarControls: (api, viewerType, viewerToolbar, viewerCollection) => Promise<void>

List of toolbar controls to be added to the viewer toolbar for the specific ViewerType

Parameters

api: IReviewInterfaceApi

viewerType: string

viewerToolbar: IToolbar

viewerCollection: IViewerCollection

Returns

Promise<void>

Return to top of the page
Feedback