Layout
Layout splits your content into resizable sections.
Selector
smart-layout
Properties
Events
Methods
Properties
animation"none" | "simple" | "advanced"
Sets or retrieves the current animation mode for the element. When this property is set to 'none', all animations are disabled and no animation effects will be applied. Use this property to enable, disable, or specify different animation behaviors.
Allowed Values
- "none" - animation is disabled
- "simple" - ripple animation is disabled
- "advanced" - all animations are enabled
Default value
"advanced"Example
Set the animation property.
<smart-layout animation='none'></smart-layout>
Set the animation property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.animation = 'simple';
Get the animation property.
const layout = document.querySelector('smart-layout');
let animation = layout.animation;
contextMenuDataSourceany
Specifies the list of selectable options that will appear within the context menu, allowing users to interact with or perform actions based on their selection.
Example
Set the contextMenuDataSource property.
<smart-layout context-menu-data-source='["delete", "update"]'></smart-layout>
Set the contextMenuDataSource property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.contextMenuDataSource = [{ label: "delete", value: "delete" }, { label: "Update Item", value: "value" }];
Get the contextMenuDataSource property.
const layout = document.querySelector('smart-layout');
let contextMenuDataSource = layout.contextMenuDataSource;
disabledboolean
Determines whether the element is interactive or inactive. When enabled, the element can receive user input and respond to actions. When disabled, the element becomes non-interactive and does not respond to user input or events.
Default value
falseExample
Set the disabled property.
<smart-layout disabled></smart-layout>
Set the disabled property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.disabled = false;
Get the disabled property.
const layout = document.querySelector('smart-layout');
let disabled = layout.disabled;
dataSourcearray
Sets or retrieves the data source associated with the Layout component. This property allows you to define the input data that the Layout will use to render its content, or to access the current data source being used.
Example
Set the dataSource property.
<smart-layout data-source='[object Object],[object Object]'></smart-layout>
Set the dataSource property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.dataSource = [object Object],[object Object],[object Object];
Get the dataSource property.
const layout = document.querySelector('smart-layout');
let dataSource = layout.dataSource;
unlockKeystring
Sets or retrieves the unlockKey, a unique code or token required to grant access to and activate the product’s full functionality.
Default value
""Example
Set the unlockKey property.
<smart-layout unlock-key=''></smart-layout>
Set the unlockKey property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.unlockKey = '1111-2222-3333-4444-5555';
Get the unlockKey property.
const layout = document.querySelector('smart-layout');
let unlockKey = layout.unlockKey;
localestring
Specifies or retrieves the current language setting. This property is typically used together with the messages property to display localized content based on the selected language. Setting this value changes which language messages are used, while getting it returns the currently active language code (e.g., "en", "fr", "es").
Default value
"en"Example
Set the locale property.
<smart-layout locale='de'></smart-layout>
Set the locale property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.locale = 'fr';
Get the locale property.
const layout = document.querySelector('smart-layout');
let locale = layout.locale;
messagesobject
Defines an object containing string values that represent messages or labels corresponding to various password strength states (e.g., "weak", "medium", "strong"). This is typically used to provide user feedback on password strength during password creation or validation processes.
Default value
"en": {
"propertyUnknownType": "'{{name}}' property is with undefined 'type' member!",
"propertyInvalidValue": "Invalid '{{name}}' property value! Actual value: {{actualValue}}, Expected value: {{value}}!",
"propertyInvalidValueType": "Invalid '{{name}}' property value type! Actual type: {{actualType}}, Expected type: {{type}}!",
"elementNotInDOM": "Element does not exist in DOM! Please, add the element to the DOM, before invoking a method.",
"moduleUndefined": "Module is undefined.",
"missingReference": "{{elementType}}: Missing reference to {{files}}.",
"invalidIndex": "{{elementType}}: '{{method}}' method accepts an index of type number.",
"invalidNode": "{{elementType}}: '{{method}}' method accepts an object or an array of objects as it's second parameter.",
"invalidSettings": "{{elementType}}: '{{method}}' method accepts a string or an object as it's second parameter.",
"delete": "Delete",
"noId": "{{elementType}}: requires an id in order to save/load a state."
}
Example
Set the messages property.
<smart-layout messages='{"de":{"propertyUnknownType":"Die Eigenschaft '{{name}}' hat ein nicht definiertes 'type'-Member!","propertyInvalidValue":"Ungultiger Eigenschaftswert '{{name}}'! Aktueller Wert: {{actualValue}}, Erwarteter Wert: {{value}}!","propertyInvalidValueType":"Ungultiger Eigenschaftswert '{{name}}'! Aktueller Wert: {{actualType}}, Erwarteter Wert: {{type}}!","elementNotInDOM":"Element existiert nicht in DOM! Bitte fugen Sie das Element zum DOM hinzu, bevor Sie eine Methode aufrufen.","moduleUndefined":"Modul ist nicht definiert.","missingReference":"{{elementType}}: Fehlender Verweis auf {{files}}.","invalidIndex":"{{elementType}}: '{{method}}' Methode akzeptiert einen Index der Typennummer.","indexOutOfBound":"{{elementType}}: Nicht gebundener Index / Indizes in Methode '{{method}}'.","invalidNode":"{{elementType}}: '{{method}}' Die Methode akzeptiert ein Objekt oder ein Array von Objekten als zweiten Parameter.","invalidType":"{{elementType}}: '{{propertyName}}' muss vom Typ string oder Nummer sein.", "delete":"L�schen", "noId":"{{elementType}}: Ben�tigt eine ID, um einen Zustand zu speichern / laden."}}'></smart-layout>
Set the messages property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.messages = {"{"en":{"propertyUnknownType":"'{{name}}' property is with undefined 'type' member!","propertyInvalidValue":"Invalid '{{name}}' property value! Actual value: {{actualValue}}, Expected value: {{value}}!","propertyInvalidValueType":"Invalid '{{name}}' property value type! Actual type: {{actualType}}, Expected type: {{type}}!","elementNotInDOM":"Element does not exist in DOM! Please, add the element to the DOM, before invoking a method.","moduleUndefined":"Module is undefined.","missingReference":"{{elementType}}: Missing reference to {{files}}.","invalidIndex":"{{elementType}}: '{{method}}' method accepts an index of type number.","invalidNode":"{{elementType}}: '{{method}}' method accepts an object or an array of objects as it's second parameter.","invalidSettings":"{{elementType}}: '{{method}}' method accepts a string or an object as it's second parameter.", "delete":"Delete", "noId":"{{elementType}}: requires an id in order to save/load a state."}};
Get the messages property.
const layout = document.querySelector('smart-layout');
let messages = layout.messages;
orientation"horizontal" | "vertical"
Sets or retrieves the main orientation of the Layout component. This orientation determines how child Splitters within the Layout are arranged—either horizontally or vertically—by default. All Splitters inside the Layout will inherit this orientation unless a specific orientation is defined for them individually in the dataSource configuration.
Allowed Values
- "horizontal" - Horizontally oriented items.
- "vertical" - Vertically oriented items.
Default value
"vertical"Example
Set the orientation property.
<smart-layout orientation='horizontal'></smart-layout>
Set the orientation property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.orientation = 'vertical';
Get the orientation property.
const layout = document.querySelector('smart-layout');
let orientation = layout.orientation;
readonlyboolean
If the element is set to "readonly", users cannot modify its value, but they can still highlight and copy its contents. However, they cannot type, edit, or otherwise change the value within the field. The field remains focusable and selectable, but direct user input is disabled.
Default value
falseExample
Set the readonly property.
<smart-layout readonly></smart-layout>
Set the readonly property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.readonly = true;
Get the readonly property.
const layout = document.querySelector('smart-layout');
let readonly = layout.readonly;
allowLiveSplitboolean
Indicates whether the splitting process occurs in real-time (live) or is performed as a pre-processed operation before use.
Default value
falseExample
Set the allowLiveSplit property.
<smart-layout allow-live-split></smart-layout>
Set the allowLiveSplit property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.allowLiveSplit = true;
Get the allowLiveSplit property.
const layout = document.querySelector('smart-layout');
let allowLiveSplit = layout.allowLiveSplit;
rightToLeftboolean
Sets or retrieves a value that determines whether the element's layout direction is configured for right-to-left (RTL) languages, such as Arabic or Hebrew, enabling proper alignment and rendering for locales that use RTL text.
Default value
falseExample
Set the rightToLeft property.
<smart-layout right-to-left></smart-layout>
Set the rightToLeft property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.rightToLeft = true;
Get the rightToLeft property.
const layout = document.querySelector('smart-layout');
let rightToLeft = layout.rightToLeft;
selectedIndexany
Specifies which item is currently selected from a list or collection. This property typically holds the identifier, index, or value of the selected item, allowing the application to reference or display the chosen option.
Example
Set the selectedIndex property.
<smart-layout selected-index='0'></smart-layout>
Set the selectedIndex property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.selectedIndex = 0.1;
Get the selectedIndex property.
const layout = document.querySelector('smart-layout');
let selectedIndex = layout.selectedIndex;
themestring
Specifies the theme to be applied. The theme controls the overall appearance and style of the element, including colors, fonts, and visual layout, ensuring a consistent look and feel across the user interface.
Default value
""Example
Set the theme property.
<smart-layout theme='blue'></smart-layout>
Set the theme property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.theme = 'red';
Get the theme property.
const layout = document.querySelector('smart-layout');
let theme = layout.theme;
unfocusableboolean
When set to true, this property prevents the element from receiving keyboard focus, making it impossible for users to select the element using tab navigation or other focus-related interactions.
Default value
falseExample
Set the unfocusable property.
<smart-layout unfocusable></smart-layout>
Set the unfocusable property by using the HTML Element's instance.
const layout = document.querySelector('smart-layout');
layout.unfocusable = false;
Get the unfocusable property.
const layout = document.querySelector('smart-layout');
let unfocusable = layout.unfocusable;
Events
resizeCustomEvent
This event is triggered immediately after the user has finished resizing an element or window. It signals that the resizing action is complete, allowing you to perform any necessary updates or actions in response to the new size.
- Bubbles Yes
- Cancelable No
- Interface CustomEvent
- Event handler property onResize
Arguments
evCustomEvent
Methods
isDefaultPrevented
Returns true if the event was prevented by any of its subscribers.
Returns
boolean true if the default action was prevented. Otherwise, returns false.
preventDefault
The preventDefault() method prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.
stopPropagation
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.
Example
Set up the event handler of resize event.
const layout = document.querySelector('smart-layout'); layout.addEventListener('resize', function (event) { // event handling code goes here. })
stateChangeCustomEvent
This event is triggered whenever there is a change in the Layout's state. Examples include actions such as adding a new item, removing an existing item, or any other modification that alters the structure or arrangement of the Layout.
- Bubbles Yes
- Cancelable No
- Interface CustomEvent
- Event handler property onStateChange
Arguments
evCustomEvent
ev.detailObject
ev.detail.item - The Splitter item that was the target of a change.
ev.detail.type - A description of the operation that has cause the change.
Methods
isDefaultPrevented
Returns true if the event was prevented by any of its subscribers.
Returns
boolean true if the default action was prevented. Otherwise, returns false.
preventDefault
The preventDefault() method prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.
stopPropagation
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.
Example
Set up the event handler of stateChange event.
const layout = document.querySelector('smart-layout'); layout.addEventListener('stateChange', function (event) { const detail = event.detail, item = detail.item, type = detail.type; // event handling code goes here. })
changeCustomEvent
This event is triggered whenever the user changes the current selection, such as by highlighting different text or choosing a new item from a list. It occurs immediately after the selection has been modified, allowing you to respond to changes in user input or interface focus.
- Bubbles Yes
- Cancelable No
- Interface CustomEvent
- Event handler property onChange
Arguments
evCustomEvent
ev.detailObject
ev.detail.oldSelectedIndex - The Splitter item that was previously selected.
ev.detail.selectedIndex - The Splitter item that is currently selected.
Methods
isDefaultPrevented
Returns true if the event was prevented by any of its subscribers.
Returns
boolean true if the default action was prevented. Otherwise, returns false.
preventDefault
The preventDefault() method prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.
stopPropagation
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.
Example
Set up the event handler of change event.
const layout = document.querySelector('smart-layout'); layout.addEventListener('change', function (event) { const detail = event.detail, oldSelectedIndex = detail.oldSelectedIndex, selectedIndex = detail.selectedIndex; // event handling code goes here. })
closingCustomEvent
This event is triggered right before the context menu is closed. Within the event handler, you can call event.preventDefault() to cancel the closing operation, allowing you to execute custom logic or prevent the menu from closing based on certain conditions.
- Bubbles Yes
- Cancelable Yes
- Interface CustomEvent
- Event handler property onClosing
Arguments
evCustomEvent
Methods
isDefaultPrevented
Returns true if the event was prevented by any of its subscribers.
Returns
boolean true if the default action was prevented. Otherwise, returns false.
preventDefault
The preventDefault() method prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.
stopPropagation
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.
Example
Set up the event handler of closing event.
const layout = document.querySelector('smart-layout'); layout.addEventListener('closing', function (event) { // event handling code goes here. })
closeCustomEvent
This event is triggered when the context menu is closed by the user, either by selecting an option or clicking outside the menu.
- Bubbles Yes
- Cancelable No
- Interface CustomEvent
- Event handler property onClose
Arguments
evCustomEvent
Methods
isDefaultPrevented
Returns true if the event was prevented by any of its subscribers.
Returns
boolean true if the default action was prevented. Otherwise, returns false.
preventDefault
The preventDefault() method prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.
stopPropagation
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.
Example
Set up the event handler of close event.
const layout = document.querySelector('smart-layout'); layout.addEventListener('close', function (event) { // event handling code goes here. })
openingCustomEvent
This event is fired just before the context menu appears, typically when a user right-clicks on an element. By calling event.preventDefault() within the event handler, you can prevent the default context menu from opening, allowing you to implement a custom context menu or handle the action in a different way.
- Bubbles Yes
- Cancelable Yes
- Interface CustomEvent
- Event handler property onOpening
Arguments
evCustomEvent
Methods
isDefaultPrevented
Returns true if the event was prevented by any of its subscribers.
Returns
boolean true if the default action was prevented. Otherwise, returns false.
preventDefault
The preventDefault() method prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.
stopPropagation
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.
Example
Set up the event handler of opening event.
const layout = document.querySelector('smart-layout'); layout.addEventListener('opening', function (event) { // event handling code goes here. })
openCustomEvent
This event is triggered whenever the context menu (typically accessed by right-clicking or a similar user action) is opened by the user.
- Bubbles Yes
- Cancelable No
- Interface CustomEvent
- Event handler property onOpen
Arguments
evCustomEvent
Methods
isDefaultPrevented
Returns true if the event was prevented by any of its subscribers.
Returns
boolean true if the default action was prevented. Otherwise, returns false.
preventDefault
The preventDefault() method prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.
stopPropagation
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.
Example
Set up the event handler of open event.
const layout = document.querySelector('smart-layout'); layout.addEventListener('open', function (event) { // event handling code goes here. })
menuItemClickCustomEvent
This event is triggered whenever a user selects and clicks an option from the context menu. It occurs after the user has opened the context menu—typically via right-click or a long press—and chosen a specific menu item. The event provides details about the selected option, enabling you to handle custom actions or respond dynamically based on the user's selection.
- Bubbles Yes
- Cancelable No
- Interface CustomEvent
- Event handler property onMenuItemClick
Arguments
evCustomEvent
ev.detailObject
ev.detail.target - The Splitter item that was the target of the context menu opening.
ev.detail.item - The Context menu item that was clicked.
ev.detail.label - The label of the context menu that was clicked.
ev.detail.value - The value of the context menu that was clicked.
Methods
isDefaultPrevented
Returns true if the event was prevented by any of its subscribers.
Returns
boolean true if the default action was prevented. Otherwise, returns false.
preventDefault
The preventDefault() method prevents the default action for a specified event. In this way, the source component suppresses the built-in behavior that follows the event.
stopPropagation
The stopPropagation() method of the Event interface prevents further propagation of the current event in the capturing and bubbling phases.
Example
Set up the event handler of menuItemClick event.
const layout = document.querySelector('smart-layout'); layout.addEventListener('menuItemClick', function (event) { const detail = event.detail, target = detail.target, item = detail.item, label = detail.label, value = detail.value; // event handling code goes here. })
Methods
getItem( index: number | string): void
Returns the Layout item located at the specified index within the collection. The index is passed as a parameter, and the function retrieves the corresponding Layout item from the list or array. This allows you to access a particular Layout item by its position in the sequence.
Arguments
indexnumber | string
The index of an item.
Invoke the getItem method.
const layout = document.querySelector('smart-layout'); layout.getItem(1);
refresh(): void
Automatically updates and redraws the layout to reflect any recent changes, ensuring all components are properly arranged and displayed according to the latest data or configuration.
Invoke the refresh method.
const layout = document.querySelector('smart-layout'); layout.refresh();
createLayoutItem( type: any, position?: string | undefined): void
Inserts a new item element into the Layout component, positioning it within the existing structure according to the component's layout configuration. This action updates the Layout to include the new item as part of its content, ensuring proper rendering and alignment with other elements.
Arguments
typeany
The index of an item to be removed or an instance of Smart.SplitterItem.
position?string | undefined
A string that represents the position where the new item will be created.
Invoke the createLayoutItem method.
const layout = document.querySelector('smart-layout'); layout.createLayoutItem("newItem, 'top'","newItem, 'bottom'");
moveChildren( oldItem: any, newItem: any): void
Transfers all child elements or nodes from a specified source item to a designated target item, effectively moving the entire group of children so they become nested under the target item instead of the source.
Arguments
oldItemany
The source item that will have it's content removed.
newItemany
The host item that will have it's content replaced.
Invoke the moveChildren method.
const layout = document.querySelector('smart-layout'); layout.moveChildren("oldItem, newItem");
LayoutGroup
LayoutGroup represents a group of layout items inside the Layout.
Selector
smart-layout-group
Properties
Properties
disabledboolean
Determines whether the element is interactive or not. When enabled, the element can be interacted with by users (e.g., clicked, edited, or focused). When disabled, the element becomes non-interactive and typically appears visually subdued, preventing any user actions.
Default value
falseExample
Set the disabled property.
<smart-layout-group disabled></smart-layout-group>
Set the disabled property by using the HTML Element's instance.
const layoutgroup = document.querySelector('smart-layout-group');
layoutgroup.disabled = false;
Get the disabled property.
const layoutgroup = document.querySelector('smart-layout-group');
let disabled = layoutgroup.disabled;
modifiersarray
Sets or retrieves the modifier properties applied to the Layout item, allowing you to customize its appearance and behavior (such as alignment, padding, margin, or transformations). Use this property to define or access configuration options that modify how the Layout item is displayed or interacts within its container.
Example
Set the modifiers property.
<smart-layout-group modifiers='[ "resize", "drag"]'></smart-layout-group>
Set the modifiers property by using the HTML Element's instance.
const layoutgroup = document.querySelector('smart-layout-group');
layoutgroup.modifiers = [ "close", "drag"];
Get the modifiers property.
const layoutgroup = document.querySelector('smart-layout-group');
let modifiers = layoutgroup.modifiers;
minnumber
Specifies the minimum allowable size for the item, ensuring that it cannot be resized smaller than this value. This property helps maintain layout integrity by preventing the item from shrinking below the defined threshold.
Default value
50Example
Set the min property.
<smart-layout-group min='10'></smart-layout-group>
Set the min property by using the HTML Element's instance.
const layoutgroup = document.querySelector('smart-layout-group');
layoutgroup.min = 20;
Get the min property.
const layoutgroup = document.querySelector('smart-layout-group');
let min = layoutgroup.min;
labelstring
Specifies the text or name displayed as the label for the item, which is typically used to identify or describe the item in user interfaces.
Default value
"Group"Example
Set the label property.
<smart-layout-group label='No Content'></smart-layout-group>
Set the label property by using the HTML Element's instance.
const layoutgroup = document.querySelector('smart-layout-group');
layoutgroup.label = 'Please Add Content...';
Get the label property.
const layoutgroup = document.querySelector('smart-layout-group');
let label = layoutgroup.label;
orientation"horizontal" | "vertical"
Specifies the alignment or direction in which the group’s elements are arranged (e.g., horizontal, vertical, or custom orientation). This property controls how child components are positioned within the group.
Allowed Values
- "horizontal" - Horizontally oriented group items.
- "vertical" - Vertically oriented group items.
Default value
"vertical"Example
Set the orientation property.
<smart-layout-group orientation='horizontal'></smart-layout-group>
Set the orientation property by using the HTML Element's instance.
const layoutgroup = document.querySelector('smart-layout-group');
layoutgroup.orientation = 'vertical';
Get the orientation property.
const layoutgroup = document.querySelector('smart-layout-group');
let orientation = layoutgroup.orientation;
sizeany
Specifies the overall dimensions of the item, such as its width, height, or volume, which can be used for layout, display, or calculation purposes.
Example
Set the size property.
<smart-layout-group size='100'></smart-layout-group>
Set the size property by using the HTML Element's instance.
const layoutgroup = document.querySelector('smart-layout-group');
layoutgroup.size = 300;
Get the size property.
const layoutgroup = document.querySelector('smart-layout-group');
let size = layoutgroup.size;
unfocusableboolean
If set to true, the element will be excluded from the tab order and cannot receive keyboard focus. This means users will not be able to focus on the element using the keyboard or other assistive technologies.
Default value
falseExample
Set the unfocusable property.
<smart-layout-group unfocusable></smart-layout-group>
Set the unfocusable property by using the HTML Element's instance.
const layoutgroup = document.querySelector('smart-layout-group');
layoutgroup.unfocusable = false;
Get the unfocusable property.
const layoutgroup = document.querySelector('smart-layout-group');
let unfocusable = layoutgroup.unfocusable;
Methods
LayoutItem
Layout item represents a single content section inside the Layout.
Selector
smart-layout-item
Properties
Properties
disabledboolean
Specifies whether the element is active and interactive (enabled) or inactive and non-interactive (disabled). When disabled, users cannot interact with or modify the element.
Default value
falseExample
Set the disabled property.
<smart-layout-item disabled></smart-layout-item>
Set the disabled property by using the HTML Element's instance.
const layoutitem = document.querySelector('smart-layout-item');
layoutitem.disabled = false;
Get the disabled property.
const layoutitem = document.querySelector('smart-layout-item');
let disabled = layoutitem.disabled;
modifiersarray
Sets or retrieves the modifiers applied to the Layout item, allowing you to customize its appearance or behavior, such as spacing, alignment, or other layout-related properties.
Example
Set the modifiers property.
<smart-layout-item modifiers='[ "resize", "drag"]'></smart-layout-item>
Set the modifiers property by using the HTML Element's instance.
const layoutitem = document.querySelector('smart-layout-item');
layoutitem.modifiers = [ "close", "drag"];
Get the modifiers property.
const layoutitem = document.querySelector('smart-layout-item');
let modifiers = layoutitem.modifiers;
minnumber
Specifies the minimum allowed size for the item. This value sets the smallest dimensions (such as width or height) that the item can be resized or displayed at within its container.
Default value
50Example
Set the min property.
<smart-layout-item min='10'></smart-layout-item>
Set the min property by using the HTML Element's instance.
const layoutitem = document.querySelector('smart-layout-item');
layoutitem.min = 20;
Get the min property.
const layoutitem = document.querySelector('smart-layout-item');
let min = layoutitem.min;
labelstring
Specifies the text or caption displayed as the item's label. This value is used to identify or describe the item in the user interface.
Default value
"Item"Example
Set the label property.
<smart-layout-item label='No Content'></smart-layout-item>
Set the label property by using the HTML Element's instance.
const layoutitem = document.querySelector('smart-layout-item');
layoutitem.label = 'Please Add Content...';
Get the label property.
const layoutitem = document.querySelector('smart-layout-item');
let label = layoutitem.label;
sizeany
Specifies the dimensions of the item, such as width, height, or overall scale, to control how large or small the item appears within the interface.
Example
Set the size property.
<smart-layout-item size='100'></smart-layout-item>
Set the size property by using the HTML Element's instance.
const layoutitem = document.querySelector('smart-layout-item');
layoutitem.size = 300;
Get the size property.
const layoutitem = document.querySelector('smart-layout-item');
let size = layoutitem.size;
unfocusableboolean
When set to true, this property prevents the element from receiving keyboard focus, making it inaccessible through keyboard navigation such as the Tab key.
Default value
falseExample
Set the unfocusable property.
<smart-layout-item unfocusable></smart-layout-item>
Set the unfocusable property by using the HTML Element's instance.
const layoutitem = document.querySelector('smart-layout-item');
layoutitem.unfocusable = false;
Get the unfocusable property.
const layoutitem = document.querySelector('smart-layout-item');
let unfocusable = layoutitem.unfocusable;
Methods
TabLayoutGroup
TabLayoutGroup represents a group of TabLayoutItems each with it's own Tab label.
Selector
smart-tab-layout-group
Properties
Properties
disabledboolean
Specifies whether the element is interactive and can be used by the user. When enabled, the element responds to user actions; when disabled, the element is inactive and cannot be interacted with.
Default value
falseExample
Set the disabled property.
<smart-tab-layout-group disabled></smart-tab-layout-group>
Set the disabled property by using the HTML Element's instance.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
tablayoutgroup.disabled = false;
Get the disabled property.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
let disabled = tablayoutgroup.disabled;
modifiersarray
Gets the current modifiers applied to the Layout item, or sets new modifiers to customize its appearance and behavior. Modifiers may include properties such as alignment, spacing, padding, or visibility.
Example
Set the modifiers property.
<smart-tab-layout-group modifiers='[ "resize", "drag"]'></smart-tab-layout-group>
Set the modifiers property by using the HTML Element's instance.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
tablayoutgroup.modifiers = [ "close", "drag"];
Get the modifiers property.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
let modifiers = tablayoutgroup.modifiers;
minnumber
Specifies the minimum allowable size for the item. This value ensures that the item's dimensions do not shrink below the defined threshold, helping maintain layout consistency and usability.
Default value
50Example
Set the min property.
<smart-tab-layout-group min='10'></smart-tab-layout-group>
Set the min property by using the HTML Element's instance.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
tablayoutgroup.min = 20;
Get the min property.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
let min = tablayoutgroup.min;
labelstring
Specifies the text that will be displayed as the item's label, providing a descriptive name or title for the user interface element.
Default value
"TabGroup"Example
Set the label property.
<smart-tab-layout-group label='No Content'></smart-tab-layout-group>
Set the label property by using the HTML Element's instance.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
tablayoutgroup.label = 'Please Add Content...';
Get the label property.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
let label = tablayoutgroup.label;
orientation"horizontal" | "vertical"
Specifies the orientation (horizontal or vertical) of the group, defining how its child elements are arranged within the component. This setting affects the layout and flow direction of the grouped items.
Allowed Values
- "horizontal" - Horizontally oriented group items.
- "vertical" - Vertically oriented group items.
Default value
"vertical"Example
Set the orientation property.
<smart-tab-layout-group orientation='horizontal'></smart-tab-layout-group>
Set the orientation property by using the HTML Element's instance.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
tablayoutgroup.orientation = 'vertical';
Get the orientation property.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
let orientation = tablayoutgroup.orientation;
position"top" | "bottom" | "left" | "right"
Specifies the alignment or placement of the group of tab items within the tab container. This determines whether the tabs are positioned, for example, at the start, center, end, or distributed evenly along the container.
Allowed Values
- "top" - Positions the tab labels on the top side of the group.
- "bottom" - Positions the tab labels on the bottom side of the group.
- "left" - Positions the tab labels on the left side of the group.
- "right" - Positions the tab labels on the right side of the group.
Default value
"top"Example
Set the position property.
<smart-tab-layout-group position='bottom'></smart-tab-layout-group>
Set the position property by using the HTML Element's instance.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
tablayoutgroup.position = 'top';
Get the position property.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
let position = tablayoutgroup.position;
sizeany
Specifies the dimensions or overall scale of the item, such as its width, height, or length. This property defines how large or small the item appears or is rendered within the user interface or layout.
Example
Set the size property.
<smart-tab-layout-group size='100'></smart-tab-layout-group>
Set the size property by using the HTML Element's instance.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
tablayoutgroup.size = 300;
Get the size property.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
let size = tablayoutgroup.size;
unfocusableboolean
When set to true, this property prevents the element from receiving keyboard focus, meaning it cannot be selected or navigated to using the Tab key or other keyboard navigation methods.
Default value
falseExample
Set the unfocusable property.
<smart-tab-layout-group unfocusable></smart-tab-layout-group>
Set the unfocusable property by using the HTML Element's instance.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
tablayoutgroup.unfocusable = false;
Get the unfocusable property.
const tablayoutgroup = document.querySelector('smart-tab-layout-group');
let unfocusable = tablayoutgroup.unfocusable;
Methods
TabLayoutItem
TabLayoutItem represents a Layout Item that has a Tab label and is applicable to a TabLayoutGroup.
Selector
smart-tab-layout-item
Properties
Properties
disabledboolean
Determines whether the element is interactive or not. When enabled, users can interact with the element; when disabled, the element becomes inactive and unresponsive to user actions.
Default value
falseExample
Set the disabled property.
<smart-tab-layout-item disabled></smart-tab-layout-item>
Set the disabled property by using the HTML Element's instance.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
tablayoutitem.disabled = false;
Get the disabled property.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
let disabled = tablayoutitem.disabled;
modifiersarray
Gets or sets the modifier properties (such as alignment, padding, spacing, or styling options) applied to the Layout item, allowing you to customize its appearance and behavior.
Example
Set the modifiers property.
<smart-tab-layout-item modifiers='[ "resize", "drag"]'></smart-tab-layout-item>
Set the modifiers property by using the HTML Element's instance.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
tablayoutitem.modifiers = [ "close", "drag"];
Get the modifiers property.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
let modifiers = tablayoutitem.modifiers;
minnumber
Specifies the minimum allowable size for the item, ensuring that it cannot be resized or rendered smaller than this value.
Default value
50Example
Set the min property.
<smart-tab-layout-item min='10'></smart-tab-layout-item>
Set the min property by using the HTML Element's instance.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
tablayoutitem.min = 20;
Get the min property.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
let min = tablayoutitem.min;
labelstring
Specifies the text or name displayed as the label for the item. This value is shown to users as the item's identifier or title in user interfaces.
Default value
"TabItem"Example
Set the label property.
<smart-tab-layout-item label='No Content'></smart-tab-layout-item>
Set the label property by using the HTML Element's instance.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
tablayoutitem.label = 'Please Add Content...';
Get the label property.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
let label = tablayoutitem.label;
orientation"horizontal" | "vertical"
Specifies the alignment and direction in which the group’s elements are arranged, such as horizontal or vertical orientation.
Allowed Values
- "horizontal" - Horizontally oriented group items.
- "vertical" - Vertically oriented group items.
Default value
"vertical"Example
Set the orientation property.
<smart-tab-layout-item orientation='horizontal'></smart-tab-layout-item>
Set the orientation property by using the HTML Element's instance.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
tablayoutitem.orientation = 'vertical';
Get the orientation property.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
let orientation = tablayoutitem.orientation;
sizeany
Specifies the overall dimensions of the item, such as its width, height, or length, to define how much space the item occupies.
Example
Set the size property.
<smart-tab-layout-item size='100'></smart-tab-layout-item>
Set the size property by using the HTML Element's instance.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
tablayoutitem.size = 300;
Get the size property.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
let size = tablayoutitem.size;
unfocusableboolean
When set to true, this property prevents the element from receiving keyboard focus, meaning users will not be able to access the element using the Tab key or other keyboard navigation methods.
Default value
falseExample
Set the unfocusable property.
<smart-tab-layout-item unfocusable></smart-tab-layout-item>
Set the unfocusable property by using the HTML Element's instance.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
tablayoutitem.unfocusable = false;
Get the unfocusable property.
const tablayoutitem = document.querySelector('smart-tab-layout-item');
let unfocusable = tablayoutitem.unfocusable;