# Class OjDiagram

The component WebElement for oj-diagram. Do not instantiate this class directly, instead, use ojDiagram.

#### Hierarchy

- OjDiagramBase
  - OjDiagram

#####
Index

### Constructors

constructor

### Methods

changeHiddenCategories
changeHighlightedCategories
changePanZoomState
changeSelection
clear
click
findElement
findElements
getAnimationOnDataChange
getAnimationOnDisplay
getAs
getAttribute
getCssValue
getDnd
getDriver
getFocusRenderer
getHiddenCategories
getHighlightMatch
getHighlightedCategories
getHoverBehavior
getHoverRenderer
getId
getLayout
getLinkContent
getLinkHighlightMode
getLinkProperties
getLocation
getMaxZoom
getMinZoom
getNodeContent
getNodeHighlightMode
getNodeProperties
getOverview
getPanDirection
getPanZoomState
getPanning
getPromotedLinkBehavior
getProperty
getRect
getRenderer
getSelection
getSelectionMode
getSelectionRenderer
getShadowRoot
getSize
getStyleDefaults
getTagName
getText
getTooltip
getTouchResponse
getTrackResize
getTranslations
getZoomRenderer
getZooming
hasSize
hasVisibility
isDisplayed
isEnabled
isSelected
sendKeys
serialize
setProperty
submit
takeScreenshot
whenBusyContextReady
whenReady
buildId
equals
extractId
isId

## Constructors

### constructor

- new OjDiagram(el, locators): OjDiagram

- Constructor. Pass an instance of WebDriver's WebElement that represents the DOM node on which we"ll perform operations.

  #### Parameters

  - ##### el: WebElement

    The basic WebElement with which this WebElement will work.

  - ##### locators: ElementLocators

  #### Returns OjDiagram

  Inherited from OjDiagramBase.constructor

## Methods

### changeHiddenCategories

- changeHiddenCategories(hiddenCategories): Promise<void>

- Sets the value of `hiddenCategories` property. Specifies categories used for filtering.

  #### Parameters

  - ##### hiddenCategories: string[]

    The value to set for `hiddenCategories`

  #### Returns Promise<void>

  Inherited from OjDiagramBase.changeHiddenCategories

### changeHighlightedCategories

- changeHighlightedCategories(highlightedCategories): Promise<void>

- Sets the value of `highlightedCategories` property. Specifies categories used for highlighting.

  #### Parameters

  - ##### highlightedCategories: string[]

    The value to set for `highlightedCategories`

  #### Returns Promise<void>

  Inherited from OjDiagramBase.changeHighlightedCategories

### changePanZoomState

- changePanZoomState(panZoomState): Promise<void>

- Sets the value of `panZoomState` property. A writeback object that contains properties zoom, centerX, and centerY that represent the panZoomState

  #### Parameters

  - ##### panZoomState: PanZoomState

    The value to set for `panZoomState`

  #### Returns Promise<void>

  Inherited from OjDiagramBase.changePanZoomState

### changeSelection

- changeSelection(selection): Promise<void>

- Sets the value of `selection` property. An array containing the ids of the selected nodes and links.

  #### Parameters

  - ##### selection: any[]

    The value to set for `selection`

  #### Returns Promise<void>

  Inherited from OjDiagramBase.changeSelection

### clear

- clear(): Promise<void>

- ### Inherit Doc

  #### Returns Promise<void>

  Inherited from OjDiagramBase.clear

### click

- click(): Promise<void>

- ### Inherit Doc

  #### Returns Promise<void>

  Inherited from OjDiagramBase.click

### findElement

- findElement(locator): WebElementPromise

- ### Inherit Doc

  #### Parameters

  - ##### locator: Locator

  #### Returns WebElementPromise

  Inherited from OjDiagramBase.findElement

### findElements

- findElements(locator): Promise<WebElement[]>

- ### Inherit Doc

  #### Parameters

  - ##### locator: Locator

  #### Returns Promise<WebElement[]>

  Inherited from OjDiagramBase.findElements

### getAnimationOnDataChange

- getAnimationOnDataChange(): Promise<string>

- Gets the value of `animationOnDataChange` property. Specifies the animation that is applied on data changes.

  #### Returns Promise<string>

  The value of `animationOnDataChange` property.

  Inherited from OjDiagramBase.getAnimationOnDataChange

### getAnimationOnDisplay

- getAnimationOnDisplay(): Promise<string>

- Gets the value of `animationOnDisplay` property. Specifies the animation that is shown on initial display.

  #### Returns Promise<string>

  The value of `animationOnDisplay` property.

  Inherited from OjDiagramBase.getAnimationOnDisplay

### getAs

- getAs(): Promise<string>

- Gets the value of `as` property. An alias for the '$current' context variable passed to slot content for the nodeTemplate or linkTemplate slots.

  ### Deprecated

  Since 6.2.0. Set the alias directly on the template element using the data-oj-as attribute instead.

  #### Returns Promise<string>

  The value of `as` property.

  Inherited from OjDiagramBase.getAs

### getAttribute

- getAttribute(attributeName): Promise<string>

- ### Inherit Doc

  #### Parameters

  - ##### attributeName: string

  #### Returns Promise<string>

  Inherited from OjDiagramBase.getAttribute

### getCssValue

- getCssValue(cssStyleProperty): Promise<string>

- ### Inherit Doc

  #### Parameters

  - ##### cssStyleProperty: string

  #### Returns Promise<string>

  Inherited from OjDiagramBase.getCssValue

### getDnd

- getDnd(): Promise<Dnd>

- Gets the value of `dnd` property. Used to customize the drag and drop features.

  #### Returns Promise<Dnd>

  The value of `dnd` property.

  Inherited from OjDiagramBase.getDnd

### getDriver

- getDriver(): WebDriver

- #### Returns WebDriver

  The parent driver for this instance.

  Inherited from OjDiagramBase.getDriver

### getFocusRenderer

- getFocusRenderer(): Promise<null>

- Gets the value of `focusRenderer` property. Specifies custom renderer for the diagram nodes used for focus updates.

  ### Deprecated

  Since 8.0.0. Use nodeContent.focusRenderer instead.

  #### Returns Promise<null>

  The value of `focusRenderer` property.

  Inherited from OjDiagramBase.getFocusRenderer

### getHiddenCategories

- getHiddenCategories(): Promise<string[]>

- Gets the value of `hiddenCategories` property. Specifies categories used for filtering.

  #### Returns Promise<string[]>

  The value of `hiddenCategories` property.

  Inherited from OjDiagramBase.getHiddenCategories

### getHighlightMatch

- getHighlightMatch(): Promise<string>

- Gets the value of `highlightMatch` property. Specifies matching condition used for category highlighting.

  #### Returns Promise<string>

  The value of `highlightMatch` property.

  Inherited from OjDiagramBase.getHighlightMatch

### getHighlightedCategories

- getHighlightedCategories(): Promise<string[]>

- Gets the value of `highlightedCategories` property. Specifies categories used for highlighting.

  #### Returns Promise<string[]>

  The value of `highlightedCategories` property.

  Inherited from OjDiagramBase.getHighlightedCategories

### getHoverBehavior

- getHoverBehavior(): Promise<string>

- Gets the value of `hoverBehavior` property. Defines the behavior applied when hovering over diagram nodes and links.

  #### Returns Promise<string>

  The value of `hoverBehavior` property.

  Inherited from OjDiagramBase.getHoverBehavior

### getHoverRenderer

- getHoverRenderer(): Promise<null>

- Gets the value of `hoverRenderer` property. Specifies custom renderer for the diagram nodes used for hover updates.

  ### Deprecated

  Since 8.0.0. Use nodeContent.hoverRenderer instead.

  #### Returns Promise<null>

  The value of `hoverRenderer` property.

  Inherited from OjDiagramBase.getHoverRenderer

### getId

- getId(): Promise<string>

- #### Returns Promise<string>

  A promise that resolves to the server-assigned opaque ID assigned to this element.

  Inherited from OjDiagramBase.getId

### getLayout

- getLayout(): Promise<null>

- Gets the value of `layout` property. Specifies layout callback used to position nodes and links.

  #### Returns Promise<null>

  The value of `layout` property.

  Inherited from OjDiagramBase.getLayout

### getLinkContent

- getLinkContent(): Promise<LinkContent>

- Gets the value of `linkContent` property. An object containing an optional callbacks function for link customization.

  #### Returns Promise<LinkContent>

  The value of `linkContent` property.

  Inherited from OjDiagramBase.getLinkContent

### getLinkHighlightMode

- getLinkHighlightMode(): Promise<string>

- Gets the value of `linkHighlightMode` property. Defines link highlighting mode.

  #### Returns Promise<string>

  The value of `linkHighlightMode` property.

  Inherited from OjDiagramBase.getLinkHighlightMode

### getLinkProperties

- getLinkProperties(): Promise<null>

- Gets the value of `linkProperties` property. Optional callback for customizing link appearance based on link data.

  ### Deprecated

  Since 6.0.0. See nodeData and linkData usage.

  #### Returns Promise<null>

  The value of `linkProperties` property.

  Inherited from OjDiagramBase.getLinkProperties

### getLocation

- getLocation(): Promise<ILocation>

- ### Inherit Doc

  #### Returns Promise<ILocation>

  Inherited from OjDiagramBase.getLocation

### getMaxZoom

- getMaxZoom(): Promise<number>

- Gets the value of `maxZoom` property. Specifies the maximum zoom level for this diagram.

  #### Returns Promise<number>

  The value of `maxZoom` property.

  Inherited from OjDiagramBase.getMaxZoom

### getMinZoom

- getMinZoom(): Promise<number>

- Gets the value of `minZoom` property. Specifies the minimum zoom level for this diagram.

  #### Returns Promise<number>

  The value of `minZoom` property.

  Inherited from OjDiagramBase.getMinZoom

### getNodeContent

- getNodeContent(): Promise<NodeContent>

- Gets the value of `nodeContent` property. An object containing an optional callbacks function for node customization.

  #### Returns Promise<NodeContent>

  The value of `nodeContent` property.

  Inherited from OjDiagramBase.getNodeContent

### getNodeHighlightMode

- getNodeHighlightMode(): Promise<string>

- Gets the value of `nodeHighlightMode` property. Defines node highlighting mode.

  #### Returns Promise<string>

  The value of `nodeHighlightMode` property.

  Inherited from OjDiagramBase.getNodeHighlightMode

### getNodeProperties

- getNodeProperties(): Promise<null>

- Gets the value of `nodeProperties` property. Optional callback for customizing node appearance based on node data.

  ### Deprecated

  Since 6.0.0. See nodeData and linkData usage.

  #### Returns Promise<null>

  The value of `nodeProperties` property.

  Inherited from OjDiagramBase.getNodeProperties

### getOverview

- getOverview(): Promise<Overview>

- Gets the value of `overview` property. An object, used to define a diagram overview. If not specified, no overview will be shown.

  #### Returns Promise<Overview>

  The value of `overview` property.

  Inherited from OjDiagramBase.getOverview

### getPanDirection

- getPanDirection(): Promise<string>

- Gets the value of `panDirection` property. Specifies if panning allowed in horizontal and vertical directions.

  #### Returns Promise<string>

  The value of `panDirection` property.

  Inherited from OjDiagramBase.getPanDirection

### getPanZoomState

- getPanZoomState(): Promise<PanZoomState>

- Gets the value of `panZoomState` property. A writeback object that contains properties zoom, centerX, and centerY that represent the panZoomState

  #### Returns Promise<PanZoomState>

  The value of `panZoomState` property.

  Inherited from OjDiagramBase.getPanZoomState

### getPanning

- getPanning(): Promise<string>

- Gets the value of `panning` property. Specifies whether panning is allowed in Diagram.

  #### Returns Promise<string>

  The value of `panning` property.

  Inherited from OjDiagramBase.getPanning

### getPromotedLinkBehavior

- getPromotedLinkBehavior(): Promise<string>

- Gets the value of `promotedLinkBehavior` property. Defines promoted link behavior for the component.

  #### Returns Promise<string>

  The value of `promotedLinkBehavior` property.

  Inherited from OjDiagramBase.getPromotedLinkBehavior

### getProperty

- getProperty<T>(propertyName): Promise<T>

- Get a named property value from this component. This function will wait for the application's busy context to complete before attempting to get the property value.

  #### Type Parameters

  - #### T = string

  #### Parameters

  - ##### propertyName: string

    The name of the property

  #### Returns Promise<T>

  A Promise that yields a value for the named property.

  Inherited from OjDiagramBase.getProperty

### getRect

- getRect(): Promise<IRectangle>

- ### Inherit Doc

  #### Returns Promise<IRectangle>

  Inherited from OjDiagramBase.getRect

### getRenderer

- getRenderer(): Promise<null>

- Gets the value of `renderer` property. Specifies custom renderer for the diagram nodes used for initial rendering.

  ### Deprecated

  Since 8.0.0. Use nodeContent.renderer instead.

  #### Returns Promise<null>

  The value of `renderer` property.

  Inherited from OjDiagramBase.getRenderer

### getSelection

- getSelection(): Promise<any[]>

- Gets the value of `selection` property. An array containing the ids of the selected nodes and links.

  #### Returns Promise<any[]>

  The value of `selection` property.

  Inherited from OjDiagramBase.getSelection

### getSelectionMode

- getSelectionMode(): Promise<string>

- Gets the value of `selectionMode` property. Specifies the selection behavior on the diagram. See the Help documentation for more information.

  #### Returns Promise<string>

  The value of `selectionMode` property.

  Inherited from OjDiagramBase.getSelectionMode

### getSelectionRenderer

- getSelectionRenderer(): Promise<null>

- Gets the value of `selectionRenderer` property. Specifies custom renderer for the diagram nodes used for selection updates.

  ### Deprecated

  Since 8.0.0. Use nodeContent.selectionRenderer instead.

  #### Returns Promise<null>

  The value of `selectionRenderer` property.

  Inherited from OjDiagramBase.getSelectionRenderer

### getShadowRoot

- getShadowRoot(): ShadowRootPromise

- Get the shadow root of the current web element.

  #### Returns ShadowRootPromise

  A promise that will be resolved with the elements shadow root or rejected with NoSuchShadowRootError

  Inherited from OjDiagramBase.getShadowRoot

### getSize

- getSize(): Promise<ISize>

- ### Inherit Doc

  #### Returns Promise<ISize>

  Inherited from OjDiagramBase.getSize

### getStyleDefaults

- getStyleDefaults(): Promise<StyleDefaults>

- Gets the value of `styleDefaults` property. An object defining the style defaults for this diagram.

  #### Returns Promise<StyleDefaults>

  The value of `styleDefaults` property.

  Inherited from OjDiagramBase.getStyleDefaults

### getTagName

- getTagName(): Promise<string>

- Schedules a command to query for the tag/node name of this element.

  #### Returns Promise<string>

  A promise that will be resolved with the element's tag name.

  Inherited from OjDiagramBase.getTagName

### getText

- getText(): Promise<string>

- ### Inherit Doc

  #### Returns Promise<string>

  Inherited from OjDiagramBase.getText

### getTooltip

- getTooltip(): Promise<Tooltip>

- Gets the value of `tooltip` property. An object containing an optional callback function for tooltip customization.

  #### Returns Promise<Tooltip>

  The value of `tooltip` property.

  Inherited from OjDiagramBase.getTooltip

### getTouchResponse

- getTouchResponse(): Promise<string>

- Gets the value of `touchResponse` property. Specifies touch response behavior.

  #### Returns Promise<string>

  The value of `touchResponse` property.

  Inherited from OjDiagramBase.getTouchResponse

### getTrackResize

- getTrackResize(): Promise<string>

- Gets the value of `trackResize` property. Defines whether the element will automatically render in response to changes in size. See the Help documentation for more information.

  #### Returns Promise<string>

  The value of `trackResize` property.

  Inherited from OjDiagramBase.getTrackResize

### getTranslations

- getTranslations(): Promise<Translations>

- Gets the value of `translations` property. A collection of translated resources from the translation bundle, or null if this component has no resources.

  #### Returns Promise<Translations>

  The value of `translations` property.

  Inherited from OjDiagramBase.getTranslations

### getZoomRenderer

- getZoomRenderer(): Promise<null>

- Gets the value of `zoomRenderer` property. Specifies custom renderer for the diagram nodes used for zoom updates.

  ### Deprecated

  Since 8.0.0. Use nodeContent.zoomRenderer instead.

  #### Returns Promise<null>

  The value of `zoomRenderer` property.

  Inherited from OjDiagramBase.getZoomRenderer

### getZooming

- getZooming(): Promise<string>

- Gets the value of `zooming` property. Specifies whether zooming is allowed in Diagram.

  #### Returns Promise<string>

  The value of `zooming` property.

  Inherited from OjDiagramBase.getZooming

### `Protected` hasSize

- hasSize(): Condition<Promise<boolean>>

- Create a wait condition that is satisfied when the element's DOM has a non-zero size.

  ### Deprecated

  Since 11.0.0. Call the appropriate WebElement method to test the size of the element.

  #### Returns Condition<Promise<boolean>>

  The Condition to be used with driver.wait() that's satisfied when the element's DOM has a non-zero size.

  Inherited from OjDiagramBase.hasSize

### `Protected` hasVisibility

- hasVisibility(): Condition<Promise<boolean>>

- Create a wait condition that is satisfid when the element is visible. The condition is satisfied when the element is displayed, as reported by #isDisplayed, and is scrolled into view. This is method is deprecated. Use WebElement.isDisplayed instead to test the display of the element, and scroll it into view if necessary.

  ### Deprecated

  #### Returns Condition<Promise<boolean>>

  Inherited from OjDiagramBase.hasVisibility

### isDisplayed

- isDisplayed(): Promise<boolean>

- ### Inherit Doc

  #### Returns Promise<boolean>

  Inherited from OjDiagramBase.isDisplayed

### isEnabled

- isEnabled(): Promise<boolean>

- ### Inherit Doc

  #### Returns Promise<boolean>

  Inherited from OjDiagramBase.isEnabled

### isSelected

- isSelected(): Promise<boolean>

- ### Inherit Doc

  #### Returns Promise<boolean>

  Inherited from OjDiagramBase.isSelected

### sendKeys

- sendKeys(...varArgs): Promise<void>

- ### Inherit Doc

  #### Parameters

  - ##### `Rest` ...varArgs: (string | number | Promise<string | number>)[]

  #### Returns Promise<void>

  Inherited from OjDiagramBase.sendKeys

### serialize

- serialize(): Promise<IWebElementId>

- #### Returns Promise<IWebElementId>

  Inherited from OjDiagramBase.serialize

### `Protected` setProperty

- setProperty<T>(propertyName, value): Promise<void>

- Set a property value on the remote element. This function first waits for the BusyContext to clear before setting the property, then after setting, waits again to ensure that no additional busy states were created due to the property setting.

  #### Type Parameters

  - #### T = string

  #### Parameters

  - ##### propertyName: string

    The property name to set

  - ##### value: T

    The value to set for the property

  #### Returns Promise<void>

  A Promise which resolves when the remote property has been set to the value. Any value returned from the call to set the remote property is returned in the Promise.

  Inherited from OjDiagramBase.setProperty

### submit

- submit(): Promise<void>

- ### Inherit Doc

  #### Returns Promise<void>

  Inherited from OjDiagramBase.submit

### takeScreenshot

- takeScreenshot(optScroll?): Promise<string>

- ### Inherit Doc

  #### Parameters

  - ##### `Optional` optScroll: boolean

  #### Returns Promise<string>

  Inherited from OjDiagramBase.takeScreenshot

### whenBusyContextReady

- whenBusyContextReady(): Promise<void>

- Returns a Promise that is resolved when the application's busy state reports ready. This method checks only that the application's busy context is ready, and not that the DOM element is actually displayed or has a physical size, such as is the case with #whenReady. Operations which are read-only in nature should call this method prior to execution.

  #### Returns Promise<void>

  A Promise which is resolved when the page's busy state is ready.

  Inherited from OjDiagramBase.whenBusyContextReady

### whenReady

- whenReady(): Promise<void>

- Returns a Promise that is resolved when the element is ready for interaction--it is visible, has a size, and the app's busy context is ready. Operations on the DOM which rely on its physical location and size to be in a "ready" state should use this command, such as clicking, sending keys, locating child elements, and so on.

  #### Returns Promise<void>

  A Promise that's resolved when all conditions are met.

  Inherited from OjDiagramBase.whenReady

### `Static` buildId

- buildId(id, opt_noLegacy?): IWebElementId

- #### Parameters

  - ##### id: string

    The raw ID.

  - ##### `Optional` opt_noLegacy: boolean

    Whether to exclude the legacy element key.

  #### Returns IWebElementId

  The element ID for use with WebDriver's wire protocol.

  Inherited from OjDiagramBase.buildId

### `Static` equals

- equals(a, b): Promise<boolean>

- Compares two WebElements for equality.

  #### Parameters

  - ##### a: WebElement

    A WebElement.

  - ##### b: WebElement

    A WebElement.

  #### Returns Promise<boolean>

  A promise that will be resolved to whether the two WebElements are equal.

  Inherited from OjDiagramBase.equals

### `Static` extractId

- extractId(obj): string

- Extracts the encoded WebElement ID from the object.

  ### Throws

  if the object is not a valid encoded ID.

  #### Parameters

  - ##### obj: IWebElementId

    The object to extract the ID from.

  #### Returns string

  the extracted ID.

  Inherited from OjDiagramBase.extractId

### `Static` isId

- isId(obj): boolean

- #### Parameters

  - ##### obj: IWebElementId

    the object to test.

  #### Returns boolean

  whether the object is a valid encoded WebElement ID.

  Inherited from OjDiagramBase.isId

Generated using TypeDoc