@timlassiter11/yatl
    Preparing search index...

    Class YatlTable<T>

    A virtualized data table capable of handling complex sorting, filtering, and tokenized searching.

    yatl-table

    yatl-row-click - Fired when a user clicks a row.

    yatl-row-select-request - Fired before the row selection changes. Cancellable

    yatl-row-select - Fired when the row selection changes.

    yatl-column-sort-request - Fired before a column sort order changes. Cancellable.

    yatl-column-sort - Fired when a column sort order changes.

    yatl-column-toggle - Fired when a column's visibility changes.

    yatl-column-resize - Fired after a column has been resized by the user.

    yatl-column-reorder-request - Fired when the user drops a column into a new position. Cancellable.

    yatl-column-reorder - Fired after the column order changes.

    yatl-table-commit-request -

    yatl-table-search - Fired when the search query is updated.

    yatl-table-view-change - Fired when the visible slice of data changes due to sorting, filtering, or data updates. Payload contains the processed rows.

    yatl-table-state-change - Fired when any persistable state (width, order, sort, query) changes. Used for syncing with local storage.

    Type Parameters

    Hierarchy

    • LitElement
      • YatlTable

    Implements

    Index

    Other

    constructor accessKey accessKeyLabel ariaActiveDescendantElement ariaAtomic ariaAutoComplete ariaBrailleLabel ariaBrailleRoleDescription ariaBusy ariaChecked ariaColCount ariaColIndex ariaColIndexText ariaColSpan ariaControlsElements ariaCurrent ariaDescribedByElements ariaDescription ariaDetailsElements ariaDisabled ariaErrorMessageElements ariaExpanded ariaFlowToElements ariaHasPopup ariaHidden ariaInvalid ariaKeyShortcuts ariaLabel ariaLabelledByElements ariaLevel ariaLive ariaModal ariaMultiLine ariaMultiSelectable ariaOrientation ariaOwnsElements ariaPlaceholder ariaPosInSet ariaPressed ariaReadOnly ariaRelevant ariaRequired ariaRoleDescription ariaRowCount ariaRowIndex ariaRowIndexText ariaRowSpan ariaSelected ariaSetSize ariaSort ariaValueMax ariaValueMin ariaValueNow ariaValueText assignedSlot ATTRIBUTE_NODE attributes attributeStyleMap autocapitalize autocorrect autofocus baseURI CDATA_SECTION_NODE childElementCount childNodes children className clientHeight clientLeft clientTop clientWidth COMMENT_NODE commitStrategy contentEditable currentCSSZoom dataset dir DOCUMENT_FRAGMENT_NODE DOCUMENT_NODE DOCUMENT_POSITION_CONTAINED_BY DOCUMENT_POSITION_CONTAINS DOCUMENT_POSITION_DISCONNECTED DOCUMENT_POSITION_FOLLOWING DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC DOCUMENT_POSITION_PRECEDING DOCUMENT_TYPE_NODE draggable editTrigger ELEMENT_NODE emptyMessage enterKeyHint ENTITY_NODE ENTITY_REFERENCE_NODE firstChild firstElementChild hidden hideFooter id inert innerHTML innerText inputMode isConnected isContentEditable lang lastChild lastElementChild localName namespaceURI nextElementSibling nextSibling nodeName nodeType nodeValue nonce? noResultsMessage NOTATION_NODE nullValuePlaceholder offsetHeight offsetLeft offsetParent offsetTop offsetWidth onabort onanimationcancel onanimationend onanimationiteration onanimationstart onauxclick onbeforeinput onbeforematch onbeforetoggle onblur oncancel oncanplay oncanplaythrough onchange onclick onclose oncontextlost oncontextmenu oncontextrestored oncopy oncuechange oncut ondblclick ondrag ondragend ondragenter ondragleave ondragover ondragstart ondrop ondurationchange onemptied onended onerror onfocus onformdata onfullscreenchange onfullscreenerror ongotpointercapture oninput oninvalid onkeydown onkeypress onkeyup onload onloadeddata onloadedmetadata onloadstart onlostpointercapture onmousedown onmouseenter onmouseleave onmousemove onmouseout onmouseover onmouseup onpaste onpause onplay onplaying onpointercancel onpointerdown onpointerenter onpointerleave onpointermove onpointerout onpointerover onpointerrawupdate onpointerup onprogress onratechange onreset onresize onscroll onscrollend onsecuritypolicyviolation onseeked onseeking onselect onselectionchange onselectstart onslotchange onstalled onsubmit onsuspend ontimeupdate ontoggle ontouchcancel? ontouchend? ontouchmove? ontouchstart? ontransitioncancel ontransitionend ontransitionrun ontransitionstart onvolumechange onwaiting onwebkitanimationend onwebkitanimationiteration onwebkitanimationstart onwebkittransitionend onwheel outerHTML outerText ownerDocument parentElement parentNode popover prefix previousElementSibling previousSibling PROCESSING_INSTRUCTION_NODE readonly reorderable resizable role rowNumbers rowParts scrollHeight scrollLeft scrollTop scrollWidth shadowRoot slot sortable spellcheck striped tabIndex tagName TEXT_NODE title translate virtualScroll writingSuggestions _$litElement$ _initializers? [metadata] finalized classList columnOrder columns columnStates controller data dataUpdateTimestamp displayColumns filteredData filters filterStrategy part rowIdCallback rowSelectionMethod scoredSearch searchQuery searchTokenizer selectedRowIds storageOptions style textContent tokenizedSearch addEventListener after animate append appendChild attachInternals attachShadow before blur checkVisibility click cloneNode closest compareDocumentPosition computedStyleMap contains deleteRow deleteRowAtIndex deselectAll deselectRow dispatchEvent export findRow findRowIndex focus getAnimations getAttribute getAttributeNames getAttributeNode getAttributeNodeNS getAttributeNS getBoundingClientRect getClientRects getColumn getColumnState getDisplayColumn getElementsByClassName getElementsByTagName getElementsByTagNameNS getHTML getRootNode getRow getTableState hasAttribute hasAttributeNS hasAttributes hasChildNodes hasPointerCapture hideColumn hidePopover insertAdjacentElement insertAdjacentHTML insertAdjacentText insertBefore isDefaultNamespace isEqualNode isRowSelected isSameNode lookupNamespaceURI lookupPrefix matches moveColumn normalize prepend print querySelector querySelectorAll reflowVirtualizer releasePointerCapture remove removeAttribute removeAttributeNode removeAttributeNS removeChild removeEventListener renderBodyContents renderCell renderCellContents renderCheckbox renderColumnResizer renderColumnSortIcon renderFooter renderHeader renderHeaderCell renderRow renderRowNumberCell renderRowNumberHeader renderRowSelectorCell renderSelectionHeader replaceChild replaceChildren replaceWith requestFullscreen requestPointerLock resizeColumn scroll scrollBy scrollIntoView scrollTo scrollToFilteredIndex scrollToOriginalIndex scrollToPx scrollToRow selectAll selectRow setAttribute setAttributeNode setAttributeNodeNS setAttributeNS setHTMLUnsafe setPointerCapture showColumn showPopover sort toggleAttribute toggleColumnVisibility togglePopover toggleRowSelection updateColumnState updateRow updateRowAtIndex updateTableState webkitMatchesSelector addInitializer finalize

    attributes

    controllers

    dev-mode

    lifecycle

    properties

    rendering

    styles

    updates

    Other

    accessKey: string

    The HTMLElement.accessKey property sets the keystroke which a user can press to jump to a given element.

    MDN Reference

    accessKeyLabel: string

    The HTMLElement.accessKeyLabel read-only property returns a string containing the element's browser-assigned access key (if any); otherwise it returns an empty string.

    MDN Reference

    ariaActiveDescendantElement: Element | null
    ariaAtomic: string | null
    ariaAutoComplete: string | null
    ariaBrailleLabel: string | null
    ariaBrailleRoleDescription: string | null
    ariaBusy: string | null
    ariaChecked: string | null
    ariaColCount: string | null
    ariaColIndex: string | null
    ariaColIndexText: string | null
    ariaColSpan: string | null
    ariaControlsElements: readonly Element[] | null
    ariaCurrent: string | null
    ariaDescribedByElements: readonly Element[] | null
    ariaDescription: string | null
    ariaDetailsElements: readonly Element[] | null
    ariaDisabled: string | null
    ariaErrorMessageElements: readonly Element[] | null
    ariaExpanded: string | null
    ariaFlowToElements: readonly Element[] | null
    ariaHasPopup: string | null
    ariaHidden: string | null
    ariaInvalid: string | null
    ariaKeyShortcuts: string | null
    ariaLabel: string | null
    ariaLabelledByElements: readonly Element[] | null
    ariaLevel: string | null
    ariaLive: string | null
    ariaModal: string | null
    ariaMultiLine: string | null
    ariaMultiSelectable: string | null
    ariaOrientation: string | null
    ariaOwnsElements: readonly Element[] | null
    ariaPlaceholder: string | null
    ariaPosInSet: string | null
    ariaPressed: string | null
    ariaReadOnly: string | null
    ariaRelevant: string | null
    ariaRequired: string | null
    ariaRoleDescription: string | null
    ariaRowCount: string | null
    ariaRowIndex: string | null
    ariaRowIndexText: string | null
    ariaRowSpan: string | null
    ariaSelected: string | null
    ariaSetSize: string | null
    ariaSort: string | null
    ariaValueMax: string | null
    ariaValueMin: string | null
    ariaValueNow: string | null
    ariaValueText: string | null
    assignedSlot: HTMLSlotElement | null
    ATTRIBUTE_NODE: 2
    attributes: NamedNodeMap

    The Element.attributes property returns a live collection of all attribute nodes registered to the specified node.

    MDN Reference

    attributeStyleMap: StylePropertyMap
    autocapitalize: string

    The autocapitalize property of the HTMLElement interface represents the element's capitalization behavior for user input.

    MDN Reference

    autocorrect: boolean

    The autocorrect property of the HTMLElement interface controls whether or not autocorrection of editable text is enabled for spelling and/or punctuation errors.

    MDN Reference

    autofocus: boolean
    baseURI: string

    The read-only baseURI property of the Node interface returns the absolute base URL of the document containing the node.

    MDN Reference

    CDATA_SECTION_NODE: 4

    node is a CDATASection node.

    childElementCount: number
    childNodes: NodeListOf<ChildNode>

    The read-only childNodes property of the Node interface returns a live the first child node is assigned index 0.

    MDN Reference

    children: HTMLCollection

    Returns the child elements.

    MDN Reference

    className: string

    The className property of the of the specified element.

    MDN Reference

    clientHeight: number

    The clientHeight read-only property of the Element interface is zero for elements with no CSS or inline layout boxes; otherwise, it's the inner height of an element in pixels.

    MDN Reference

    clientLeft: number

    The clientLeft read-only property of the Element interface returns the width of the left border of an element in pixels.

    MDN Reference

    clientTop: number

    The clientTop read-only property of the Element interface returns the width of the top border of an element in pixels.

    MDN Reference

    clientWidth: number

    The clientWidth read-only property of the Element interface is zero for inline elements and elements with no CSS; otherwise, it's the inner width of an element in pixels.

    MDN Reference

    COMMENT_NODE: 8

    node is a Comment node.

    commitStrategy: YatlTableCommitStrategy = 'immediate'

    commit-strategy

    contentEditable: string
    currentCSSZoom: number

    The currentCSSZoom read-only property of the Element interface provides the 'effective' CSS zoom of an element, taking into account the zoom applied to the element and all its parent elements.

    MDN Reference

    dataset: DOMStringMap
    dir: string

    The HTMLElement.dir property indicates the text writing directionality of the content of the current element.

    MDN Reference

    DOCUMENT_FRAGMENT_NODE: 11

    node is a DocumentFragment node.

    DOCUMENT_NODE: 9

    node is a document.

    DOCUMENT_POSITION_CONTAINED_BY: 16

    Set when other is a descendant of node.

    DOCUMENT_POSITION_CONTAINS: 8

    Set when other is an ancestor of node.

    DOCUMENT_POSITION_DISCONNECTED: 1

    Set when node and other are not in the same tree.

    DOCUMENT_POSITION_FOLLOWING: 4

    Set when other is following node.

    DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 32
    DOCUMENT_POSITION_PRECEDING: 2

    Set when other is preceding node.

    DOCUMENT_TYPE_NODE: 10

    node is a doctype.

    draggable: boolean

    The draggable property of the HTMLElement interface gets and sets a Boolean primitive indicating if the element is draggable.

    MDN Reference

    editTrigger: YatlTableEditTrigger = 'dblclick'

    Controls how a user initiates cell editing within the table.

    'dblclick'
    

    YatlTableEditTrigger for available options.

    edit-trigger

    ELEMENT_NODE: 1

    node is an element.

    emptyMessage: string = 'No records to display'
    "No records to display"
    

    emptry-message

    enterKeyHint: string
    ENTITY_NODE: 6
    ENTITY_REFERENCE_NODE: 5
    firstChild: ChildNode | null

    The read-only firstChild property of the Node interface returns the node's first child in the tree, or null if the node has no children.

    MDN Reference

    firstElementChild: Element | null

    Returns the first child that is an element, and null otherwise.

    MDN Reference

    hidden: boolean

    The HTMLElement property hidden reflects the value of the element's hidden attribute.

    MDN Reference

    hideFooter: boolean = false

    hide-footer

    id: string

    The id property of the Element interface represents the element's identifier, reflecting the id global attribute.

    MDN Reference

    inert: boolean

    The HTMLElement property inert reflects the value of the element's inert attribute.

    MDN Reference

    innerHTML: string

    The innerHTML property of the Element interface gets or sets the HTML or XML markup contained within the element.

    MDN Reference

    innerText: string

    The innerText property of the HTMLElement interface represents the rendered text content of a node and its descendants.

    MDN Reference

    inputMode: string
    isConnected: boolean

    The read-only isConnected property of the Node interface returns a boolean indicating whether the node is connected (directly or indirectly) to a Document object.

    MDN Reference

    isContentEditable: boolean
    lang: string

    The lang property of the HTMLElement interface indicates the base language of an element's attribute values and text content, in the form of a MISSING: RFC(5646, 'BCP 47 language identifier tag')].

    MDN Reference

    lastChild: ChildNode | null

    The read-only lastChild property of the Node interface returns the last child of the node, or null if there are no child nodes.

    MDN Reference

    lastElementChild: Element | null

    Returns the last child that is an element, and null otherwise.

    MDN Reference

    localName: string

    The Element.localName read-only property returns the local part of the qualified name of an element.

    MDN Reference

    namespaceURI: string | null

    The Element.namespaceURI read-only property returns the namespace URI of the element, or null if the element is not in a namespace.

    MDN Reference

    nextElementSibling: Element | null

    Returns the first following sibling that is an element, and null otherwise.

    MDN Reference

    nextSibling: ChildNode | null

    The read-only nextSibling property of the Node interface returns the node immediately following the specified one in their parent's Node.childNodes, or returns null if the specified node is the last child in the parent element.

    MDN Reference

    nodeName: string

    The read-only nodeName property of Node returns the name of the current node as a string.

    MDN Reference

    nodeType: number

    The read-only nodeType property of a Node interface is an integer that identifies what the node is.

    MDN Reference

    nodeValue: string | null

    The nodeValue property of the Node interface returns or sets the value of the current node.

    MDN Reference

    nonce?: string
    noResultsMessage: string = 'No matching records found'
    "No matching records found"
    

    no-results-message

    NOTATION_NODE: 12
    nullValuePlaceholder: string = '-'
    "-"
    

    null-value-placeholder

    offsetHeight: number

    The offsetHeight read-only property of the HTMLElement interface returns the height of an element, including vertical padding and borders, as an integer.

    MDN Reference

    offsetLeft: number

    The offsetLeft read-only property of the HTMLElement interface returns the number of pixels that the upper left corner of the current element is offset to the left within the HTMLElement.offsetParent node.

    MDN Reference

    offsetParent: Element | null

    The HTMLElement.offsetParent read-only property returns a reference to the element which is the closest (nearest in the containment hierarchy) positioned ancestor element.

    MDN Reference

    offsetTop: number

    The offsetTop read-only property of the HTMLElement interface returns the distance from the outer border of the current element (including its margin) to the top padding edge of the HTMLelement.offsetParent, the closest positioned ancestor element.

    MDN Reference

    offsetWidth: number

    The offsetWidth read-only property of the HTMLElement interface returns the layout width of an element as an integer.

    MDN Reference

    onabort: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null
    onanimationcancel:
        | ((this: GlobalEventHandlers, ev: AnimationEvent) => any)
        | null
    onanimationend: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null
    onanimationiteration:
        | ((this: GlobalEventHandlers, ev: AnimationEvent) => any)
        | null
    onanimationstart:
        | ((this: GlobalEventHandlers, ev: AnimationEvent) => any)
        | null
    onauxclick: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onbeforeinput: ((this: GlobalEventHandlers, ev: InputEvent) => any) | null
    onbeforematch: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onbeforetoggle: ((this: GlobalEventHandlers, ev: ToggleEvent) => any) | null
    onblur: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null
    oncancel: ((this: GlobalEventHandlers, ev: Event) => any) | null
    oncanplay: ((this: GlobalEventHandlers, ev: Event) => any) | null
    oncanplaythrough: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onchange: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onclick: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onclose: ((this: GlobalEventHandlers, ev: Event) => any) | null
    oncontextlost: ((this: GlobalEventHandlers, ev: Event) => any) | null
    oncontextmenu: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    oncontextrestored: ((this: GlobalEventHandlers, ev: Event) => any) | null
    oncopy: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null
    oncuechange: ((this: GlobalEventHandlers, ev: Event) => any) | null
    oncut: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null
    ondblclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null
    ondrag: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null
    ondragend: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null
    ondragenter: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null
    ondragleave: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null
    ondragover: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null
    ondragstart: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null
    ondrop: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null
    ondurationchange: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onemptied: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onended: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onerror: OnErrorEventHandler
    onfocus: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null
    onformdata: ((this: GlobalEventHandlers, ev: FormDataEvent) => any) | null
    onfullscreenchange: ((this: Element, ev: Event) => any) | null
    onfullscreenerror: ((this: Element, ev: Event) => any) | null
    ongotpointercapture:
        | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
        | null
    oninput: ((this: GlobalEventHandlers, ev: Event) => any) | null
    oninvalid: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onkeydown: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null
    onkeypress: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null

    MDN Reference

    onkeyup: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null
    onload: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onloadeddata: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onloadedmetadata: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onloadstart: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onlostpointercapture:
        | ((this: GlobalEventHandlers, ev: PointerEvent) => any)
        | null
    onmousedown: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null
    onmouseenter: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null
    onmouseleave: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null
    onmousemove: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null
    onmouseout: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null
    onmouseover: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null
    onmouseup: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null
    onpaste: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null
    onpause: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onplay: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onplaying: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onpointercancel: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onpointerdown: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onpointerenter: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onpointerleave: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onpointermove: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onpointerout: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onpointerover: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onpointerrawupdate: ((this: GlobalEventHandlers, ev: Event) => any) | null

    Available only in secure contexts.

    MDN Reference

    onpointerup: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null
    onprogress: ((this: GlobalEventHandlers, ev: ProgressEvent) => any) | null
    onratechange: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onreset: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onresize: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null
    onscroll: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onscrollend: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onsecuritypolicyviolation:
        | ((this: GlobalEventHandlers, ev: SecurityPolicyViolationEvent) => any)
        | null
    onseeked: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onseeking: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onselect: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onselectionchange: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onselectstart: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onslotchange: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onstalled: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onsubmit: ((this: GlobalEventHandlers, ev: SubmitEvent) => any) | null
    onsuspend: ((this: GlobalEventHandlers, ev: Event) => any) | null
    ontimeupdate: ((this: GlobalEventHandlers, ev: Event) => any) | null
    ontoggle: ((this: GlobalEventHandlers, ev: ToggleEvent) => any) | null
    ontouchcancel?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null
    ontouchend?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null
    ontouchmove?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null
    ontouchstart?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null
    ontransitioncancel:
        | ((this: GlobalEventHandlers, ev: TransitionEvent) => any)
        | null
    ontransitionend:
        | ((this: GlobalEventHandlers, ev: TransitionEvent) => any)
        | null
    ontransitionrun:
        | ((this: GlobalEventHandlers, ev: TransitionEvent) => any)
        | null
    ontransitionstart:
        | ((this: GlobalEventHandlers, ev: TransitionEvent) => any)
        | null
    onvolumechange: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onwaiting: ((this: GlobalEventHandlers, ev: Event) => any) | null
    onwebkitanimationend: ((this: GlobalEventHandlers, ev: Event) => any) | null

    This is a legacy alias of onanimationend.

    MDN Reference

    onwebkitanimationiteration:
        | ((this: GlobalEventHandlers, ev: Event) => any)
        | null

    This is a legacy alias of onanimationiteration.

    MDN Reference

    onwebkitanimationstart: ((this: GlobalEventHandlers, ev: Event) => any) | null

    This is a legacy alias of onanimationstart.

    MDN Reference

    onwebkittransitionend: ((this: GlobalEventHandlers, ev: Event) => any) | null

    This is a legacy alias of ontransitionend.

    MDN Reference

    onwheel: ((this: GlobalEventHandlers, ev: WheelEvent) => any) | null
    outerHTML: string

    The outerHTML attribute of the Element DOM interface gets the serialized HTML fragment describing the element including its descendants.

    MDN Reference

    outerText: string

    The outerText property of the HTMLElement interface returns the same value as HTMLElement.innerText.

    MDN Reference

    ownerDocument: Document

    The read-only ownerDocument property of the Node interface returns the top-level document object of the node.

    MDN Reference

    parentElement: HTMLElement | null

    The read-only parentElement property of Node interface returns the DOM node's parent Element, or null if the node either has no parent, or its parent isn't a DOM Element.

    MDN Reference

    parentNode: ParentNode | null

    The read-only parentNode property of the Node interface returns the parent of the specified node in the DOM tree.

    MDN Reference

    popover: string | null

    The popover property of the HTMLElement interface gets and sets an element's popover state via JavaScript ('auto', 'hint', or 'manual'), and can be used for feature detection.

    MDN Reference

    prefix: string | null

    The Element.prefix read-only property returns the namespace prefix of the specified element, or null if no prefix is specified.

    MDN Reference

    previousElementSibling: Element | null

    Returns the first preceding sibling that is an element, and null otherwise.

    MDN Reference

    previousSibling: ChildNode | null

    The read-only previousSibling property of the Node interface returns the node immediately preceding the specified one in its parent's or null if the specified node is the first in that list.

    MDN Reference

    PROCESSING_INSTRUCTION_NODE: 7

    node is a ProcessingInstruction node.

    readonly: boolean = false

    When set, editing is completely disabled.

    reorderable: boolean = false

    Allows users to reorder columns by dragging and dropping headers.

    resizable: boolean = false

    Default resizability for all columns. Can be overridden by setting resizable on the specific column definition.

    NOTE: Changing this will not clear current column widths.

    role: string | null
    rowNumbers: boolean = false

    row-numbers

    rowParts: RowPartsCallback<T> | null = null

    A callback function to conditionally apply CSS parts to table rows.

    scrollHeight: number

    The scrollHeight read-only property of the Element interface is a measurement of the height of an element's content, including content not visible on the screen due to overflow.

    MDN Reference

    scrollLeft: number

    The scrollLeft property of the Element interface gets or sets the number of pixels by which an element's content is scrolled from its left edge.

    MDN Reference

    scrollTop: number

    The scrollTop property of the Element interface gets or sets the number of pixels by which an element's content is scrolled from its top edge.

    MDN Reference

    scrollWidth: number

    The scrollWidth read-only property of the Element interface is a measurement of the width of an element's content, including content not visible on the screen due to overflow.

    MDN Reference

    shadowRoot: ShadowRoot | null

    The Element.shadowRoot read-only property represents the shadow root hosted by the element.

    MDN Reference

    slot: string

    The slot property of the Element interface returns the name of the shadow DOM slot the element is inserted in.

    MDN Reference

    sortable: boolean = false

    Default sortability for all columns. Can be overridden by setting sortable on the specific column definition.

    NOTE: Changing this will not clear sorted column states.

    spellcheck: boolean

    The spellcheck property of the HTMLElement interface represents a boolean value that controls the spell-checking hint.

    MDN Reference

    striped: boolean = false

    Enables visual row striping

    tabIndex: number
    tagName: string

    The tagName read-only property of the Element interface returns the tag name of the element on which it's called.

    MDN Reference

    TEXT_NODE: 3

    node is a Text node.

    title: string

    The HTMLElement.title property represents the title of the element: the text usually displayed in a 'tooltip' popup when the mouse is over the node.

    MDN Reference

    translate: boolean

    The translate property of the HTMLElement interface indicates whether an element's attribute values and the values of its Text node children are to be translated when the page is localized, or whether to leave them unchanged.

    MDN Reference

    virtualScroll: boolean = false

    virtual-scroll

    writingSuggestions: string

    The writingSuggestions property of the HTMLElement interface is a string indicating if browser-provided writing suggestions should be enabled under the scope of the element or not.

    MDN Reference

    _$litElement$: boolean
    _initializers?: Initializer[]
    "[metadata]": object & Record<PropertyKey, unknown>
    finalized: true | undefined

    Marks class as having been finalized, which includes creating properties from static properties, but does not include all properties created from decorators.

    • get classList(): DOMTokenList

      The Element.classList is a read-only property that returns a live DOMTokenList collection of the class attributes of the element.

      MDN Reference

      Returns DOMTokenList

    • set classList(value: string): void

      Parameters

      • value: string

      Returns void

    • get columnOrder(): NestedKeyOf<T>[]

      The explicit, raw visual layout intent for the table's columns. This property acts as the pure state record. It is strictly symmetrical: reading this property will return the exact array of field names that was most recently set, preserving the user's or developer's exact layout preference.

      • Use this property when exporting or saving the table's layout state (e.g., to localStorage or a database).
      • Note: Because this represents intent rather than computed reality, it may contain fields that are no longer defined, or omit newly added fields. If you need the exact array of columns currently rendered on the screen, use displayColumns instead.

      Returns NestedKeyOf<T>[]

    • set columnOrder(order: NestedKeyOf<T>[]): void

      The explicit, raw visual layout intent for the table's columns. This property acts as the pure state record. It is strictly symmetrical: reading this property will return the exact array of field names that was most recently set, preserving the user's or developer's exact layout preference.

      • Use this property when exporting or saving the table's layout state (e.g., to localStorage or a database).
      • Note: Because this represents intent rather than computed reality, it may contain fields that are no longer defined, or omit newly added fields. If you need the exact array of columns currently rendered on the screen, use displayColumns instead.

      Parameters

      Returns void

    • get columnStates(): ColumnState<T>[]

      The dynamic runtime state of the table's columns (visibility, width, and sort order).

      Unlike the static columns definitions, columnStates represents the current, interactive state of the grid. This is primarily used for programmatic control, or for saving and restoring user preferences (e.g., from localStorage).

      Returns ColumnState<T>[]

    • set columnStates(states: ColumnState<T>[]): void

      The dynamic runtime state of the table's columns (visibility, width, and sort order).

      Unlike the static columns definitions, columnStates represents the current, interactive state of the grid. This is primarily used for programmatic control, or for saving and restoring user preferences (e.g., from localStorage).

      Parameters

      Returns void

    • get filters(): Partial<{ [K in string]: unknown }> | null

      An optional set of criteria to filter the visible rows. This runs before the global search query is applied. *

      Returns Partial<{ [K in string]: unknown }> | null

      // Shows rows where status is 'active' AND role is 'admin'
      table.filters = { status: 'active', role: 'admin' };
    • set filters(filters: Partial<{ [K in string]: unknown }> | null): void

      An optional set of criteria to filter the visible rows. This runs before the global search query is applied. *

      Parameters

      • filters: Partial<{ [K in string]: unknown }> | null

      Returns void

      // Shows rows where status is 'active' AND role is 'admin'
      table.filters = { status: 'active', role: 'admin' };
    • get filterStrategy(): FilterCallback<T> | null

      An optional custom filter function. Provide this function to bypass the default filter logic.

      Returns FilterCallback<T> | null

      true to keep the row in the filteredData results, false to exclude it.

      controller.filterStrategy = (row, filters) => {
      // Example: Custom global search across multiple columns
      if (filters.globalSearch) {
      const term = filters.globalSearch.toLowerCase();
      if (
      !row.firstName.toLowerCase().includes(term) &&
      !row.lastName.toLowerCase().includes(term)
      ) {
      return false;
      }
      }
      // Example: Strict mathematical matching
      if (filters.minAge && row.age < filters.minAge) {
      return false;
      }
      return true;
      };
    • set filterStrategy(value: FilterCallback<T> | null): void

      An optional custom filter function. Provide this function to bypass the default filter logic.

      Parameters

      Returns void

      true to keep the row in the filteredData results, false to exclude it.

      controller.filterStrategy = (row, filters) => {
      // Example: Custom global search across multiple columns
      if (filters.globalSearch) {
      const term = filters.globalSearch.toLowerCase();
      if (
      !row.firstName.toLowerCase().includes(term) &&
      !row.lastName.toLowerCase().includes(term)
      ) {
      return false;
      }
      }
      // Example: Strict mathematical matching
      if (filters.minAge && row.age < filters.minAge) {
      return false;
      }
      return true;
      };
    • get part(): DOMTokenList

      The part property of the Element interface represents the part identifier(s) of the element (i.e., set using the part attribute), returned as a DOMTokenList.

      MDN Reference

      Returns DOMTokenList

    • set part(value: string): void

      Parameters

      • value: string

      Returns void

    • get rowIdCallback(): RowIdCallback<T> | undefined

      A callback function used to extract or generate a unique identifier for each row.

      A stable, unique ID is heavily relied upon by the grid engine for maintaining row selection state, tracking row metadata, and ensuring optimal rendering performance within the virtual scroller—especially when data is actively being sorted, filtered, or updated.

      Default Behavior: * If not provided, the table will automatically attempt to locate an id, key, or _id property on the row data object. If none are found, it falls back to using the row's original array index (which will trigger a console warning, as indices are inherently unstable during sorting).

      Note: Because this expects a JavaScript function, it is exposed strictly as a property and does not have a corresponding HTML attribute. You must use the property binding syntax (.rowIdCallback) in a Lit template.

      Returns RowIdCallback<T> | undefined

      * <yatl-table .rowIdCallback=${(row) => row.deviceUuid}></yatl-table>
      
      // Programmatic assignment using a composite key
      table.rowIdCallback = (row, index) => `${row.chassisId}-${row.slotNumber}`;
    • set rowIdCallback(callback: RowIdCallback<T> | undefined): void

      A callback function used to extract or generate a unique identifier for each row.

      A stable, unique ID is heavily relied upon by the grid engine for maintaining row selection state, tracking row metadata, and ensuring optimal rendering performance within the virtual scroller—especially when data is actively being sorted, filtered, or updated.

      Default Behavior: * If not provided, the table will automatically attempt to locate an id, key, or _id property on the row data object. If none are found, it falls back to using the row's original array index (which will trigger a console warning, as indices are inherently unstable during sorting).

      Note: Because this expects a JavaScript function, it is exposed strictly as a property and does not have a corresponding HTML attribute. You must use the property binding syntax (.rowIdCallback) in a Lit template.

      Parameters

      Returns void

      * <yatl-table .rowIdCallback=${(row) => row.deviceUuid}></yatl-table>
      
      // Programmatic assignment using a composite key
      table.rowIdCallback = (row, index) => `${row.chassisId}-${row.slotNumber}`;
    • get searchTokenizer(): (value: string) => { quoted: boolean; value: string }[]

      A function that splits the search query into tokens. Only used if search tokenization is enabled.

      Returns (value: string) => { quoted: boolean; value: string }[]

      whitespaceTokenizer
      
    • set searchTokenizer(
          tokenizer: (value: string) => { quoted: boolean; value: string }[],
      ): void

      A function that splits the search query into tokens. Only used if search tokenization is enabled.

      Parameters

      • tokenizer: (value: string) => { quoted: boolean; value: string }[]

      Returns void

      whitespaceTokenizer
      
    • get storageOptions(): | {
          key: string;
          saveColumnOrder?: boolean;
          saveColumnSortOrders?: boolean;
          saveColumnStickyPositions?: boolean;
          saveColumnVisibility?: boolean;
          saveColumnWidths?: boolean;
          saveSearchQuery?: boolean;
          saveSelectedRows?: boolean;
          storage?: StorageInterface;
      }
      | null

      Configuration options for automatically saving and restoring table state (column width, order, visibility, etc.) to the provided storage interface.

      Returns
          | {
              key: string;
              saveColumnOrder?: boolean;
              saveColumnSortOrders?: boolean;
              saveColumnStickyPositions?: boolean;
              saveColumnVisibility?: boolean;
              saveColumnWidths?: boolean;
              saveSearchQuery?: boolean;
              saveSelectedRows?: boolean;
              storage?: StorageInterface;
          }
          | null

      • {
            key: string;
            saveColumnOrder?: boolean;
            saveColumnSortOrders?: boolean;
            saveColumnStickyPositions?: boolean;
            saveColumnVisibility?: boolean;
            saveColumnWidths?: boolean;
            saveSearchQuery?: boolean;
            saveSelectedRows?: boolean;
            storage?: StorageInterface;
        }
        • key: string

          The unique key used to store the table state in the browser. *

          "my-app-users-table-v1"
          
        • OptionalsaveColumnOrder?: boolean

          Save the current order of columns

        • OptionalsaveColumnSortOrders?: boolean

          Save the current column sorting

        • OptionalsaveColumnStickyPositions?: boolean

          Save the current column sticky positions

        • OptionalsaveColumnVisibility?: boolean

          Save the current column visibility

        • OptionalsaveColumnWidths?: boolean

          Save the current column widths

        • OptionalsaveSearchQuery?: boolean

          Save the current search query

        • OptionalsaveSelectedRows?: boolean

          Save the currently selected rows

        • Optionalstorage?: StorageInterface

          A storage client for getting and setting values. Defaults to window.localStorage

      • null
    • set storageOptions(
          options:
              | {
                  key: string;
                  saveColumnOrder?: boolean;
                  saveColumnSortOrders?: boolean;
                  saveColumnStickyPositions?: boolean;
                  saveColumnVisibility?: boolean;
                  saveColumnWidths?: boolean;
                  saveSearchQuery?: boolean;
                  saveSelectedRows?: boolean;
                  storage?: StorageInterface;
              }
              | null,
      ): void

      Configuration options for automatically saving and restoring table state (column width, order, visibility, etc.) to the provided storage interface.

      Parameters

      • options:
            | {
                key: string;
                saveColumnOrder?: boolean;
                saveColumnSortOrders?: boolean;
                saveColumnStickyPositions?: boolean;
                saveColumnVisibility?: boolean;
                saveColumnWidths?: boolean;
                saveSearchQuery?: boolean;
                saveSelectedRows?: boolean;
                storage?: StorageInterface;
            }
            | null
        • {
              key: string;
              saveColumnOrder?: boolean;
              saveColumnSortOrders?: boolean;
              saveColumnStickyPositions?: boolean;
              saveColumnVisibility?: boolean;
              saveColumnWidths?: boolean;
              saveSearchQuery?: boolean;
              saveSelectedRows?: boolean;
              storage?: StorageInterface;
          }
          • key: string

            The unique key used to store the table state in the browser. *

            "my-app-users-table-v1"
            
          • OptionalsaveColumnOrder?: boolean

            Save the current order of columns

          • OptionalsaveColumnSortOrders?: boolean

            Save the current column sorting

          • OptionalsaveColumnStickyPositions?: boolean

            Save the current column sticky positions

          • OptionalsaveColumnVisibility?: boolean

            Save the current column visibility

          • OptionalsaveColumnWidths?: boolean

            Save the current column widths

          • OptionalsaveSearchQuery?: boolean

            Save the current search query

          • OptionalsaveSelectedRows?: boolean

            Save the currently selected rows

          • Optionalstorage?: StorageInterface

            A storage client for getting and setting values. Defaults to window.localStorage

        • null

      Returns void

    • get style(): CSSStyleDeclaration

      Returns CSSStyleDeclaration

    • set style(cssText: string): void

      Parameters

      • cssText: string

      Returns void

    • get textContent(): string

      Returns string

    • set textContent(value: string | null): void

      The textContent property of the Node interface represents the text content of the node and its descendants.

      MDN Reference

      Parameters

      • value: string | null

      Returns void

    • Type Parameters

      • K extends keyof HTMLElementEventMap

      Parameters

      • type: K
      • listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any
      • Optionaloptions: boolean | AddEventListenerOptions

      Returns void

    • Parameters

      • type: string
      • listener: EventListenerOrEventListenerObject
      • Optionaloptions: boolean | AddEventListenerOptions

      Returns void

    • Inserts nodes just after node, while replacing strings in nodes with equivalent Text nodes.

      Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

      MDN Reference

      Parameters

      • ...nodes: (string | Node)[]

      Returns void

    • Parameters

      • keyframes: Keyframe[] | PropertyIndexedKeyframes | null
      • Optionaloptions: number | KeyframeAnimationOptions

      Returns Animation

    • Inserts nodes after the last child of node, while replacing strings in nodes with equivalent Text nodes.

      Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

      MDN Reference

      Parameters

      • ...nodes: (string | Node)[]

      Returns void

    • The appendChild() method of the Node interface adds a node to the end of the list of children of a specified parent node.

      MDN Reference

      Type Parameters

      • T extends Node

      Parameters

      • node: T

      Returns T

    • The HTMLElement.attachInternals() method returns an ElementInternals object.

      MDN Reference

      Returns ElementInternals

    • The Element.attachShadow() method attaches a shadow DOM tree to the specified element and returns a reference to its ShadowRoot.

      MDN Reference

      Parameters

      • init: ShadowRootInit

      Returns ShadowRoot

    • Inserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.

      Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

      MDN Reference

      Parameters

      • ...nodes: (string | Node)[]

      Returns void

    • Returns void

    • The checkVisibility() method of the Element interface checks whether the element is visible.

      MDN Reference

      Parameters

      • Optionaloptions: CheckVisibilityOptions

      Returns boolean

    • The HTMLElement.click() method simulates a mouse click on an element.

      MDN Reference

      Returns void

    • The cloneNode() method of the Node interface returns a duplicate of the node on which this method was called.

      MDN Reference

      Parameters

      • Optionalsubtree: boolean

      Returns Node

    • The closest() method of the Element interface traverses the element and its parents (heading toward the document root) until it finds a node that matches the specified CSS selector.

      MDN Reference

      Type Parameters

      • K extends keyof HTMLElementTagNameMap

      Parameters

      • selector: K

      Returns HTMLElementTagNameMap[K] | null

    • Type Parameters

      • K extends keyof SVGElementTagNameMap

      Parameters

      • selector: K

      Returns SVGElementTagNameMap[K] | null

    • Type Parameters

      • K extends keyof MathMLElementTagNameMap

      Parameters

      • selector: K

      Returns MathMLElementTagNameMap[K] | null

    • Type Parameters

      • E extends Element = Element

      Parameters

      • selectors: string

      Returns E | null

    • The compareDocumentPosition() method of the Node interface reports the position of its argument node relative to the node on which it is called.

      MDN Reference

      Parameters

      • other: Node

      Returns number

    • The computedStyleMap() method of the Element interface returns a StylePropertyMapReadOnly interface which provides a read-only representation of a CSS declaration block that is an alternative to CSSStyleDeclaration.

      MDN Reference

      Returns StylePropertyMapReadOnly

    • The contains() method of the Node interface returns a boolean value indicating whether a node is a descendant of a given node, that is the node itself, one of its direct children (Node.childNodes), one of the children's direct children, and so on.

      MDN Reference

      Parameters

      • other: Node | null

      Returns boolean

    • Deletes a row at a specific original index from the table.

      Parameters

      • index: number

        The original index of the row to delete.

      Returns void

    • The dispatchEvent() method of the EventTarget sends an Event to the object, (synchronously) invoking the affected event listeners in the appropriate order.

      MDN Reference

      Parameters

      • event: Event

      Returns boolean

    • Finds the first row where field matches value

      Parameters

      • field: NestedKeyOf<T>

        The field name within the row data to search.

      • value: unknown

        The value to match against the field's content.

      Returns T | undefined

      The found row, or undefined if no match is found.

    • Finds the original index of the first row where the specified field matches the given value. This searches through the original, unfiltered dataset.

      Parameters

      • field: NestedKeyOf<T>

        The field name within the row data to search.

      • value: unknown

        The value to match against the field's content.

      Returns number

      The original index of the found row, or -1 if no match is found.

      const index = dataTable.indexOf('id', 12345);
      if (index >= 0) {
      dataTable.updateRow({description: "Updated description"}, index);
      }
    • Parameters

      • Optionaloptions: FocusOptions

      Returns void

    • Parameters

      • Optionaloptions: GetAnimationsOptions

      Returns Animation[]

    • The getAttribute() method of the element.

      MDN Reference

      Parameters

      • qualifiedName: string

      Returns string | null

    • The getAttributeNames() method of the array.

      MDN Reference

      Returns string[]

    • Returns the specified attribute of the specified element, as an Attr node.

      MDN Reference

      Parameters

      • qualifiedName: string

      Returns Attr | null

    • The getAttributeNodeNS() method of the Element interface returns the namespaced Attr node of an element.

      MDN Reference

      Parameters

      • namespace: string | null
      • localName: string

      Returns Attr | null

    • The getAttributeNS() method of the Element interface returns the string value of the attribute with the specified namespace and name.

      MDN Reference

      Parameters

      • namespace: string | null
      • localName: string

      Returns string | null

    • The Element.getBoundingClientRect() method returns a position relative to the viewport.

      MDN Reference

      Returns DOMRect

    • The getClientRects() method of the Element interface returns a collection of DOMRect objects that indicate the bounding rectangles for each CSS border box in a client.

      MDN Reference

      Returns DOMRectList

    • The Element method getElementsByClassName() returns a live specified class name or names.

      MDN Reference

      Parameters

      • classNames: string

      Returns HTMLCollectionOf<Element>

    • The Element.getElementsByTagName() method returns a live All descendants of the specified element are searched, but not the element itself.

      MDN Reference

      Type Parameters

      • K extends keyof HTMLElementTagNameMap

      Parameters

      • qualifiedName: K

      Returns HTMLCollectionOf<HTMLElementTagNameMap[K]>

    • Type Parameters

      • K extends keyof SVGElementTagNameMap

      Parameters

      • qualifiedName: K

      Returns HTMLCollectionOf<SVGElementTagNameMap[K]>

    • Type Parameters

      • K extends keyof MathMLElementTagNameMap

      Parameters

      • qualifiedName: K

      Returns HTMLCollectionOf<MathMLElementTagNameMap[K]>

    • Type Parameters

      • K extends keyof HTMLElementDeprecatedTagNameMap

      Parameters

      • qualifiedName: K

      Returns HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>

    • Parameters

      • qualifiedName: string

      Returns HTMLCollectionOf<Element>

    • The Element.getElementsByTagNameNS() method returns a live HTMLCollection of elements with the given tag name belonging to the given namespace.

      MDN Reference

      Parameters

      • namespaceURI: "http://www.w3.org/1999/xhtml"
      • localName: string

      Returns HTMLCollectionOf<HTMLElement>

    • Parameters

      • namespaceURI: "http://www.w3.org/2000/svg"
      • localName: string

      Returns HTMLCollectionOf<SVGElement>

    • Parameters

      • namespaceURI: "http://www.w3.org/1998/Math/MathML"
      • localName: string

      Returns HTMLCollectionOf<MathMLElement>

    • Parameters

      • namespace: string | null
      • localName: string

      Returns HTMLCollectionOf<Element>

    • The getHTML() method of the Element interface is used to serialize an element's DOM to an HTML string.

      MDN Reference

      Parameters

      • Optionaloptions: GetHTMLOptions

      Returns string

    • The getRootNode() method of the Node interface returns the context object's root, which optionally includes the shadow root if it is available.

      MDN Reference

      Parameters

      • Optionaloptions: GetRootNodeOptions

      Returns Node

    • The Element.hasAttribute() method returns a Boolean value indicating whether the specified element has the specified attribute or not.

      MDN Reference

      Parameters

      • qualifiedName: string

      Returns boolean

    • The hasAttributeNS() method of the Element interface returns a boolean value indicating whether the current element has the specified attribute with the specified namespace.

      MDN Reference

      Parameters

      • namespace: string | null
      • localName: string

      Returns boolean

    • The hasAttributes() method of the Element interface returns a boolean value indicating whether the current element has any attributes or not.

      MDN Reference

      Returns boolean

    • The hasChildNodes() method of the Node interface returns a boolean value indicating whether the given Node has child nodes or not.

      MDN Reference

      Returns boolean

    • The hasPointerCapture() method of the pointer capture for the pointer identified by the given pointer ID.

      MDN Reference

      Parameters

      • pointerId: number

      Returns boolean

    • The hidePopover() method of the HTMLElement interface hides a popover element (i.e., one that has a valid popover attribute) by removing it from the top layer and styling it with display: none.

      MDN Reference

      Returns void

    • The insertAdjacentElement() method of the relative to the element it is invoked upon.

      MDN Reference

      Parameters

      • where: InsertPosition
      • element: Element

      Returns Element | null

    • The insertAdjacentHTML() method of the the resulting nodes into the DOM tree at a specified position.

      MDN Reference

      Parameters

      • position: InsertPosition
      • string: string

      Returns void

    • The insertAdjacentText() method of the Element interface, given a relative position and a string, inserts a new text node at the given position relative to the element it is called from.

      MDN Reference

      Parameters

      • where: InsertPosition
      • data: string

      Returns void

    • The insertBefore() method of the Node interface inserts a node before a reference node as a child of a specified parent node.

      MDN Reference

      Type Parameters

      • T extends Node

      Parameters

      • node: T
      • child: Node | null

      Returns T

    • The isDefaultNamespace() method of the Node interface accepts a namespace URI as an argument.

      MDN Reference

      Parameters

      • namespace: string | null

      Returns boolean

    • The isEqualNode() method of the Node interface tests whether two nodes are equal.

      MDN Reference

      Parameters

      • otherNode: Node | null

      Returns boolean

    • The isSameNode() method of the Node interface is a legacy alias the for the === strict equality operator.

      MDN Reference

      Parameters

      • otherNode: Node | null

      Returns boolean

    • The lookupNamespaceURI() method of the Node interface takes a prefix as parameter and returns the namespace URI associated with it on the given node if found (and null if not).

      MDN Reference

      Parameters

      • prefix: string | null

      Returns string | null

    • The lookupPrefix() method of the Node interface returns a string containing the prefix for a given namespace URI, if present, and null if not.

      MDN Reference

      Parameters

      • namespace: string | null

      Returns string | null

    • The matches() method of the Element interface tests whether the element would be selected by the specified CSS selector.

      MDN Reference

      Parameters

      • selectors: string

      Returns boolean

    • The normalize() method of the Node interface puts the specified node and all of its sub-tree into a normalized form.

      MDN Reference

      Returns void

    • Inserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.

      Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

      MDN Reference

      Parameters

      • ...nodes: (string | Node)[]

      Returns void

    • Returns the first element that is a descendant of node that matches selectors.

      MDN Reference

      Type Parameters

      • K extends keyof HTMLElementTagNameMap

      Parameters

      • selectors: K

      Returns HTMLElementTagNameMap[K] | null

    • Type Parameters

      • K extends keyof SVGElementTagNameMap

      Parameters

      • selectors: K

      Returns SVGElementTagNameMap[K] | null

    • Type Parameters

      • K extends keyof MathMLElementTagNameMap

      Parameters

      • selectors: K

      Returns MathMLElementTagNameMap[K] | null

    • Type Parameters

      • K extends keyof HTMLElementDeprecatedTagNameMap

      Parameters

      • selectors: K

      Returns HTMLElementDeprecatedTagNameMap[K] | null

    • Type Parameters

      • E extends Element = Element

      Parameters

      • selectors: string

      Returns E | null

    • Returns all element descendants of node that match selectors.

      MDN Reference

      Type Parameters

      • K extends keyof HTMLElementTagNameMap

      Parameters

      • selectors: K

      Returns NodeListOf<HTMLElementTagNameMap[K]>

    • Type Parameters

      • K extends keyof SVGElementTagNameMap

      Parameters

      • selectors: K

      Returns NodeListOf<SVGElementTagNameMap[K]>

    • Type Parameters

      • K extends keyof MathMLElementTagNameMap

      Parameters

      • selectors: K

      Returns NodeListOf<MathMLElementTagNameMap[K]>

    • Type Parameters

      • K extends keyof HTMLElementDeprecatedTagNameMap

      Parameters

      • selectors: K

      Returns NodeListOf<HTMLElementDeprecatedTagNameMap[K]>

    • Type Parameters

      • E extends Element = Element

      Parameters

      • selectors: string

      Returns NodeListOf<E>

    • This will force the underlying virtual scroller to re-calculate row sizes and positions and re-render. This is specifically here to fix virtual scroll tables that are affected by scale animations. E.g. when put in a yatl-dialog.

      Returns void

    • The releasePointerCapture() method of the previously set for a specific (PointerEvent) pointer.

      MDN Reference

      Parameters

      • pointerId: number

      Returns void

    • Removes node.

      MDN Reference

      Returns void

    • The Element method removeAttribute() removes the attribute with the specified name from the element.

      MDN Reference

      Parameters

      • qualifiedName: string

      Returns void

    • The removeAttributeNode() method of the Element interface removes the specified Attr node from the element.

      MDN Reference

      Parameters

      • attr: Attr

      Returns Attr

    • The removeAttributeNS() method of the If you are working with HTML and you don't need to specify the requested attribute as being part of a specific namespace, use the Element.removeAttribute() method instead.

      MDN Reference

      Parameters

      • namespace: string | null
      • localName: string

      Returns void

    • The removeChild() method of the Node interface removes a child node from the DOM and returns the removed node.

      MDN Reference

      Type Parameters

      • T extends Node

      Parameters

      • child: T

      Returns T

    • Type Parameters

      • K extends keyof HTMLElementEventMap

      Parameters

      • type: K
      • listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any
      • Optionaloptions: boolean | EventListenerOptions

      Returns void

    • Parameters

      • type: string
      • listener: EventListenerOrEventListenerObject
      • Optionaloptions: boolean | EventListenerOptions

      Returns void

    • The replaceChild() method of the Node interface replaces a child node within the given (parent) node.

      MDN Reference

      Type Parameters

      • T extends Node

      Parameters

      • node: Node
      • child: T

      Returns T

    • Replace all children of node with nodes, while replacing strings in nodes with equivalent Text nodes.

      Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

      MDN Reference

      Parameters

      • ...nodes: (string | Node)[]

      Returns void

    • Replaces node with nodes, while replacing strings in nodes with equivalent Text nodes.

      Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.

      MDN Reference

      Parameters

      • ...nodes: (string | Node)[]

      Returns void

    • The Element.requestFullscreen() method issues an asynchronous request to make the element be displayed in fullscreen mode.

      MDN Reference

      Parameters

      • Optionaloptions: FullscreenOptions

      Returns Promise<void>

    • The requestPointerLock() method of the Element interface lets you asynchronously ask for the pointer to be locked on the given element.

      MDN Reference

      Parameters

      • Optionaloptions: PointerLockOptions

      Returns Promise<void>

    • The scroll() method of the Element interface scrolls the element to a particular set of coordinates inside a given element.

      MDN Reference

      Parameters

      • Optionaloptions: ScrollToOptions

      Returns void

    • Parameters

      • x: number
      • y: number

      Returns void

    • The scrollBy() method of the Element interface scrolls an element by the given amount.

      MDN Reference

      Parameters

      • Optionaloptions: ScrollToOptions

      Returns void

    • Parameters

      • x: number
      • y: number

      Returns void

    • The Element interface's scrollIntoView() method scrolls the element's ancestor containers such that the element on which scrollIntoView() is called is visible to the user.

      MDN Reference

      Parameters

      • Optionalarg: boolean | ScrollIntoViewOptions

      Returns void

    • The scrollTo() method of the Element interface scrolls to a particular set of coordinates inside a given element.

      MDN Reference

      Parameters

      • Optionaloptions: ScrollToOptions

      Returns void

    • Parameters

      • x: number
      • y: number

      Returns void

    • Scrolls the table to bring the row at the specified original index into view.

      Parameters

      • index: number

        The original index of the row (from the initial dataset).

      Returns Promise<void>

    • The setAttribute() method of the Element interface sets the value of an attribute on the specified element.

      MDN Reference

      Parameters

      • qualifiedName: string
      • value: string

      Returns void

    • The setAttributeNode() method of the Element interface adds a new Attr node to the specified element.

      MDN Reference

      Parameters

      • attr: Attr

      Returns Attr | null

    • The setAttributeNodeNS() method of the Element interface adds a new namespaced Attr node to an element.

      MDN Reference

      Parameters

      • attr: Attr

      Returns Attr | null

    • setAttributeNS adds a new attribute or changes the value of an attribute with the given namespace and name.

      MDN Reference

      Parameters

      • namespace: string | null
      • qualifiedName: string
      • value: string

      Returns void

    • The setHTMLUnsafe() method of the Element interface is used to parse a string of HTML into a DocumentFragment, optionally filtering out unwanted elements and attributes, and those that don't belong in the context, and then using it to replace the element's subtree in the DOM.

      MDN Reference

      Parameters

      • html: string

      Returns void

    • The setPointerCapture() method of the capture target of future pointer events.

      MDN Reference

      Parameters

      • pointerId: number

      Returns void

    • The showPopover() method of the HTMLElement interface shows a Popover_API element (i.e., one that has a valid popover attribute) by adding it to the top layer.

      MDN Reference

      Returns void

    • Sorts the table by a specified column and order. If order is null, the sort on this column is removed.

      Parameters

      • field: NestedKeyOf<T>

        The field name of the column to sort by.

      • order: SortOrder | null

        The sort order: 'asc', 'desc', or null to remove sorting for this column.

      • clear: boolean = true

        Clear all other sorting

      Returns void

    • The toggleAttribute() method of the present and adding it if it is not present) on the given element.

      MDN Reference

      Parameters

      • qualifiedName: string
      • Optionalforce: boolean

      Returns boolean

    • Toggles the visibility of hte specified column

      Parameters

      • field: NestedKeyOf<T>

        The field name of the column to toggle.

      • Optionalvisible: boolean

        Optionally force the visibility state.

      Returns void

    • The togglePopover() method of the HTMLElement interface toggles a Popover_API element (i.e., one that has a valid popover attribute) between the hidden and showing states.

      MDN Reference

      Parameters

      • Optionaloptions: boolean

      Returns boolean

    • Toggles the selection state of a specific row.

      Parameters

      • row: T
      • Optionalstate: boolean

      Returns void

    • Updates the data of a row at a specific original index.

      Parameters

      • index: number

        The original index of the row to update.

      • data: Partial<T>

        An object containing the new data to assign to the row. Existing fields will be updated, and new fields will be added.

      Returns void

      const index = dataTable.indexOf('id', 12345);
      if (index >= 0) {
      dataTable.updateRow(index, {description: "Updated description"});
      }
    • Parameters

      • selectors: string

      Returns boolean

      This is a legacy alias of matches.

      MDN Reference

    • Adds an initializer function to the class that is called during instance construction.

      This is useful for code that runs against a ReactiveElement subclass, such as a decorator, that needs to do work for each instance, such as setting up a ReactiveController.

      const myDecorator = (target: typeof ReactiveElement, key: string) => {
      target.addInitializer((instance: ReactiveElement) => {
      // This is run during construction of the element
      new MyController(instance);
      });
      }

      Decorating a field will then cause each instance to run an initializer that adds a controller:

      class MyElement extends LitElement {
      @myDecorator foo;
      }

      Initializers are stored per-constructor. Adding an initializer to a subclass does not add it to a superclass. Since initializers are run in constructors, initializers will run in order of the class hierarchy, starting with superclasses and progressing to the instance's class.

      Parameters

      • initializer: Initializer

      Returns void

    • Finishes setting up the class so that it's ready to be registered as a custom element and instantiated.

      This method is called by the ReactiveElement.observedAttributes getter. If you override the observedAttributes getter, you must either call super.observedAttributes to trigger finalization, or call finalize() yourself.

      Returns void

    attributes

    • get observedAttributes(): string[]

      Returns a list of attributes corresponding to the registered properties.

      Returns string[]

    • Synchronizes property values when attributes change.

      Specifically, when an attribute is set, the corresponding property is set. You should rarely need to implement this callback. If this method is overridden, super.attributeChangedCallback(name, _old, value) must be called.

      See responding to attribute changes on MDN for more information about the attributeChangedCallback.

      Parameters

      • name: string
      • _old: string | null
      • value: string | null

      Returns void

    controllers

    • Registers a ReactiveController to participate in the element's reactive update cycle. The element automatically calls into any registered controllers during its lifecycle callbacks.

      If the element is connected when addController() is called, the controller's hostConnected() callback will be immediately called.

      Parameters

      • controller: ReactiveController

      Returns void

    • Removes a ReactiveController from the element.

      Parameters

      • controller: ReactiveController

      Returns void

    dev-mode

    disableWarning?: (warningKind: WarningKind) => void

    Disable the given warning category for this class.

    This method only exists in development builds, so it should be accessed with a guard like:

    // Disable for all ReactiveElement subclasses
    ReactiveElement.disableWarning?.('migration');

    // Disable for only MyElement and subclasses
    MyElement.disableWarning?.('migration');
    enabledWarnings?: WarningKind[]

    Read or set all the enabled warning categories for this class.

    This property is only used in development builds.

    enableWarning?: (warningKind: WarningKind) => void

    Enable the given warning category for this class.

    This method only exists in development builds, so it should be accessed with a guard like:

    // Enable for all ReactiveElement subclasses
    ReactiveElement.enableWarning?.('migration');

    // Enable for only MyElement and subclasses
    MyElement.enableWarning?.('migration');

    lifecycle

    • Invoked when the component is added to the document's DOM.

      In connectedCallback() you should setup tasks that should only occur when the element is connected to the document. The most common of these is adding event listeners to nodes external to the element, like a keydown event handler added to the window.

      connectedCallback() {
      super.connectedCallback();
      addEventListener('keydown', this._handleKeydown);
      }

      Typically, anything done in connectedCallback() should be undone when the element is disconnected, in disconnectedCallback().

      Returns void

    • Invoked when the component is removed from the document's DOM.

      This callback is the main signal to the element that it may no longer be used. disconnectedCallback() should ensure that nothing is holding a reference to the element (such as event listeners added to nodes external to the element), so that it is free to be garbage collected.

      disconnectedCallback() {
      super.disconnectedCallback();
      window.removeEventListener('keydown', this._handleKeydown);
      }

      An element may be re-connected after being disconnected.

      Returns void

    properties

    elementProperties: PropertyDeclarationMap

    Memoized list of all element properties, including any superclass properties. Created lazily on user subclasses when finalizing the class.

    properties: PropertyDeclarations

    User-supplied object that maps property names to PropertyDeclaration objects containing options for configuring reactive properties. When a reactive property is set the element will update and render.

    By default properties are public fields, and as such, they should be considered as primarily settable by element users, either via attribute or the property itself.

    Generally, properties that are changed by the element should be private or protected fields and should use the state: true option. Properties marked as state do not reflect from the corresponding attribute

    However, sometimes element code does need to set a public property. This should typically only be done in response to user interaction, and an event should be fired informing the user; for example, a checkbox sets its checked property when clicked and fires a changed event. Mutating public properties should typically not be done for non-primitive (object or array) properties. In other cases when an element needs to manage state, a private property set with the state: true option should be used. When needed, state properties can be initialized via public properties to facilitate complex interactions.

    • Creates a property accessor on the element prototype if one does not exist and stores a PropertyDeclaration for the property with the given options. The property setter calls the property's hasChanged property option or uses a strict identity check to determine whether or not to request an update.

      This method may be overridden to customize properties; however, when doing so, it's important to call super.createProperty to ensure the property is setup correctly. This method calls getPropertyDescriptor internally to get a descriptor to install. To customize what properties do when they are get or set, override getPropertyDescriptor. To customize the options for a property, implement createProperty like this:

      static createProperty(name, options) {
      options = Object.assign(options, {myOption: true});
      super.createProperty(name, options);
      }

      Parameters

      • name: PropertyKey
      • Optionaloptions: PropertyDeclaration<unknown, unknown>

      Returns void

    • Returns a property descriptor to be defined on the given named property. If no descriptor is returned, the property will not become an accessor. For example,

      class MyElement extends LitElement {
      static getPropertyDescriptor(name, key, options) {
      const defaultDescriptor =
      super.getPropertyDescriptor(name, key, options);
      const setter = defaultDescriptor.set;
      return {
      get: defaultDescriptor.get,
      set(value) {
      setter.call(this, value);
      // custom action.
      },
      configurable: true,
      enumerable: true
      }
      }
      }

      Parameters

      • name: PropertyKey
      • key: string | symbol
      • options: PropertyDeclaration

      Returns PropertyDescriptor | undefined

    • Returns the property options associated with the given property. These options are defined with a PropertyDeclaration via the properties object or the @property decorator and are registered in createProperty(...).

      Note, this method should be considered "final" and not overridden. To customize the options for a given property, override createProperty.

      Parameters

      • name: PropertyKey

      Returns PropertyDeclaration<unknown, unknown>

    rendering

    renderOptions: RenderOptions
    renderRoot: HTMLElement | DocumentFragment

    Node or ShadowRoot into which element DOM should be rendered. Defaults to an open shadowRoot.

    shadowRootOptions: ShadowRootInit

    Options used when calling attachShadow. Set this property to customize the options for the shadowRoot; for example, to create a closed shadowRoot: {mode: 'closed'}.

    Note, these options are used in createRenderRoot. If this method is customized, options should be respected if possible.

    • Returns HTMLElement | DocumentFragment

    • Invoked on each update to perform rendering tasks. This method may return any value renderable by lit-html's ChildPart - typically a TemplateResult. Setting properties inside this method will not trigger the element to update.

      Returns TemplateResult<1>

    styles

    elementStyles: CSSResultOrNative[]

    Memoized list of all element styles. Created lazily on user subclasses when finalizing the class.

    styles: CSSResult[] = ...

    Array of styles to apply to the element. The styles should be defined using the css tag function, via constructible stylesheets, or imported from native CSS module scripts.

    Note on Content Security Policy:

    Element styles are implemented with <style> tags when the browser doesn't support adopted StyleSheets. To use such <style> tags with the style-src CSP directive, the style-src value must either include 'unsafe-inline' or nonce-<base64-value> with <base64-value> replaced be a server-generated nonce.

    To provide a nonce to use on generated <style> elements, set window.litNonce to a server-generated nonce in your page's HTML, before loading application code:

    <script>
    // Generated and unique per request:
    window.litNonce = 'a1b2c3d4';
    </script>
    • Takes the styles the user supplied via the static styles property and returns the array of styles to apply to the element. Override this method to integrate into a style management system.

      Styles are deduplicated preserving the last instance in the list. This is a performance optimization to avoid duplicated styles that can occur especially when composing via subclassing. The last item is kept to try to preserve the cascade order with the assumption that it's most important that last added styles override previous styles.

      Parameters

      • Optionalstyles: CSSResultGroup

      Returns CSSResultOrNative[]

    updates

    hasUpdated: boolean

    Is set to true after the first update. The element code cannot assume that renderRoot exists before the element hasUpdated.

    isUpdatePending: boolean

    True if there is a pending update as a result of calling requestUpdate(). Should only be read.

    • get updateComplete(): Promise<boolean>

      Returns a Promise that resolves when the element has completed updating. The Promise value is a boolean that is true if the element completed the update without triggering another update. The Promise result is false if a property was set inside updated(). If the Promise is rejected, an exception was thrown during the update.

      To await additional asynchronous work, override the getUpdateComplete method. For example, it is sometimes useful to await a rendered element before fulfilling this Promise. To do this, first await super.getUpdateComplete(), then any subsequent state.

      Returns Promise<boolean>

      A promise of a boolean that resolves to true if the update completed without triggering another update.

    • Note, this method should be considered final and not overridden. It is overridden on the element instance with a function that triggers the first update.

      Parameters

      • _requestedUpdate: boolean

      Returns void

    • Invoked when the element is first updated. Implement to perform one time work on the element after update.

      firstUpdated() {
      this.renderRoot.getElementById('my-text-area').focus();
      }

      Setting properties inside this method will trigger the element to update again after this update cycle completes.

      Parameters

      • _changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>

        Map of changed properties with old values

      Returns void

    • Override point for the updateComplete promise.

      It is not safe to override the updateComplete getter directly due to a limitation in TypeScript which means it is not possible to call a superclass getter (e.g. super.updateComplete.then(...)) when the target language is ES5 (https://github.com/microsoft/TypeScript/issues/338). This method should be overridden instead. For example:

      class MyElement extends LitElement {
      override async getUpdateComplete() {
      const result = await super.getUpdateComplete();
      await this._myChild.updateComplete;
      return result;
      }
      }

      Returns Promise<boolean>

      A promise of a boolean that resolves to true if the update completed without triggering another update.

    • Performs an element update. Note, if an exception is thrown during the update, firstUpdated and updated will not be called.

      Call performUpdate() to immediately process a pending update. This should generally not be needed, but it can be done in rare cases when you need to update synchronously.

      Returns void

    • Requests an update which is processed asynchronously. This should be called when an element should update based on some state not triggered by setting a reactive property. In this case, pass no arguments. It should also be called when manually implementing a property setter. In this case, pass the property name and oldValue to ensure that any configured property options are honored.

      Parameters

      • Optionalname: PropertyKey

        name of requesting property

      • OptionaloldValue: unknown

        old value of requesting property

      • Optionaloptions: PropertyDeclaration<unknown, unknown>

        property options to use instead of the previously configured options

      • OptionaluseNewValue: boolean

        if true, the newValue argument is used instead of reading the property value. This is important to use if the reactive property is a standard private accessor, as opposed to a plain property, since private members can't be dynamically read by name.

      • OptionalnewValue: unknown

        the new value of the property. This is only used if useNewValue is true.

      Returns void

    • Schedules an element update. You can override this method to change the timing of updates by returning a Promise. The update will await the returned Promise, and you should resolve the Promise to allow the update to proceed. If this method is overridden, super.scheduleUpdate() must be called.

      For instance, to schedule updates to occur just before the next frame:

      override protected async scheduleUpdate(): Promise<unknown> {
      await new Promise((resolve) => requestAnimationFrame(() => resolve()));
      super.scheduleUpdate();
      }

      Returns void | Promise<unknown>

    • Controls whether or not update() should be called when the element requests an update. By default, this method always returns true, but this can be customized to control when to update.

      Parameters

      • _changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>

        Map of changed properties with old values

      Returns boolean

    • Updates the element. This method reflects property values to attributes and calls render to render DOM via lit-html. Setting properties inside this method will not trigger another update.

      Parameters

      • changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>

        Map of changed properties with old values

      Returns void

    • Invoked whenever the element is updated. Implement to perform post-updating tasks via DOM APIs, for example, focusing an element.

      Setting properties inside this method will trigger the element to update again after this update cycle completes.

      Parameters

      Returns void

    • Invoked before update() to compute values needed during the update.

      Implement willUpdate to compute property values that depend on other properties and are used in the rest of the update process.

      willUpdate(changedProperties) {
      // only need to check changed properties for an expensive computation.
      if (changedProperties.has('firstName') || changedProperties.has('lastName')) {
      this.sha = computeSHA(`${this.firstName} ${this.lastName}`);
      }
      }

      render() {
      return html`SHA: ${this.sha}`;
      }

      Parameters

      Returns void