Appearance
ImmutableHtmlElementNode
Interface representing immutable HTML element nodes in email templates.
typescript
interface ImmutableHtmlElementNode extends ImmutableHtmlTextNodeDescription
ImmutableHtmlElementNode represents HTML elements (tags) in the template structure. It provides methods to access element properties, attributes, styles, classes, and content. This interface is essential for inspecting and analyzing HTML elements before making modifications.
Import
typescript
import { ImmutableHtmlElementNode } from '@stripoinc/ui-editor-extensions';Inheritance
Extends: ImmutableHtmlTextNode
Methods
Attribute Methods
getAttribute()
Retrieves the value of a specified attribute.
typescript
getAttribute(name: string): string | null| Parameter | Type | Description |
|---|---|---|
name | string | The attribute name (case-sensitive) |
Returns: string | null - Attribute value or null if not found
Example:
typescript
const href = element.getAttribute('href');
const target = element.getAttribute('target');
const dataId = element.getAttribute('data-id');Class Methods
hasClass()
Checks if the element has a specific CSS class.
typescript
hasClass(className: string): boolean| Parameter | Type | Description |
|---|---|---|
className | string | The CSS class name to check |
Returns: boolean - True if class exists, false otherwise
Example:
typescript
if (element.hasClass('active')) {
console.log('Element is active');
}getClassList()
Retrieves all CSS classes applied to the element.
typescript
getClassList(): string[]Returns: string[] - Array of class names
Example:
typescript
const classes = element.getClassList();
// ['btn', 'btn-primary', 'large']Style Methods
getStyle()
Retrieves the value of a specific inline style property.
typescript
getStyle(name: string): string | undefined| Parameter | Type | Description |
|---|---|---|
name | string | The style property name (case-sensitive) |
Returns: string | undefined - Style value or undefined if not set
Example:
typescript
const color = element.getStyle('color');
const backgroundColor = element.getStyle('background-color');getComputedStyle()
Retrieves the computed style value of a CSS property.
typescript
getComputedStyle(name: string): string | undefined| Parameter | Type | Description |
|---|---|---|
name | string | The CSS property name (case-sensitive) |
Returns: string | undefined - Computed style value or undefined
Note: Computed styles include inherited and stylesheet-defined styles.
Example:
typescript
const computedColor = element.getComputedStyle('color');
const computedFontSize = element.getComputedStyle('font-size');Element Information Methods
getTagName()
Retrieves the tag name of the element.
typescript
getTagName(): stringReturns: string - Lowercase tag name
Example:
typescript
const tagName = element.getTagName();
// 'div', 'p', 'table', etc.getValue()
Retrieves the value attribute of the element.
typescript
getValue(): stringReturns: string - Value attribute content
Example:
typescript
const inputValue = inputElement.getValue();Content Methods
getInnerHTML()
Retrieves the inner HTML content.
typescript
getInnerHTML(): stringReturns: string - Inner HTML as string
Example:
typescript
const innerHTML = element.getInnerHTML();
// '<p>Hello <strong>World</strong></p>'getOuterHTML()
Retrieves the outer HTML including the element itself.
typescript
getOuterHTML(): stringReturns: string - Outer HTML as string
Example:
typescript
const outerHTML = element.getOuterHTML();
// '<div class="container"><p>Content</p></div>'getInnerText()
Retrieves the text content of the element and its descendants.
typescript
getInnerText(): stringReturns: string - Concatenated text content
Example:
typescript
const text = element.getInnerText();
// All text content without HTML tagsLayout Methods
getBoundingClientRect()
Retrieves the bounding rectangle of the element.
typescript
getBoundingClientRect(): DOMRectReturns: DOMRect - Element's bounding rectangle
DOMRect Properties:
x,y: Top-left coordinateswidth,height: Dimensionstop,right,bottom,left: Edge positions
Example:
typescript
const rect = element.getBoundingClientRect();
console.log(`Width: ${rect.width}, Height: ${rect.height}`);Advanced Methods
getDisplayCondition()
Retrieves the display condition configuration.
typescript
getDisplayCondition(): DisplayConditionReturns: DisplayCondition - Display condition object
Example:
typescript
const condition = element.getDisplayCondition();
if (condition) {
console.log(`Condition: ${condition.name}`);
}