hast-util-is-element
    TypeScript icon, indicating that this package has built-in type declarations

    2.1.2 • Public • Published

    hast-util-is-element

    Build Coverage Downloads Size Sponsors Backers Chat

    hast utility to check if a node is a (certain) element.

    Install

    This package is ESM only: Node 12+ is needed to use it and it must be imported instead of required.

    npm:

    npm install hast-util-is-element

    Use

    import {isElement} from 'hast-util-is-element'
    
    isElement({type: 'text', value: 'foo'}) // => false
    
    isElement({type: 'element', tagName: 'a'}, 'a') // => true
    
    isElement({type: 'element', tagName: 'a'}, ['a', 'area']) // => true

    API

    This package exports the following identifiers: isElement, convertElement. There is no default export.

    isElement(node[, test[, index, parent[, context]]])

    Check if the given value is a (certain) element.

    • node (Node) — Node to check.
    • test (Function, string, or Array.<Test>, optional) — When array, checks if any one of the subtests pass. When string, checks that the element has that tag name. When function, see test
    • index (number, optional) — Index of node in parent
    • parent (Node, optional) — Parent of node
    • context (*, optional) — Context object to invoke test with
    Returns

    boolean — Whether test passed and node is an Element.

    Throws

    Error — When an incorrect test, index, or parent is given. A node that is not a node, or not an element, does not throw.

    function test(element[, index, parent])

    Parameters
    • element (Element) — Element to check
    • index (number?) — Index of node in parent
    • parent (Node?) — Parent of node
    Context

    * — The to is given context.

    Returns

    boolean? — Whether element matches.

    convertElement(test)

    Create a test function from test, that can later be called with a node, index, and parent. Useful if you’re going to test many nodes, for example when creating a utility where something else passes a compatible test.

    The created function is slightly faster because it expects valid input only. Therefore, passing invalid input, yields unexpected results.

    Security

    hast-util-is-element does not change the syntax tree so there are no openings for cross-site scripting (XSS) attacks.

    Related

    Contribute

    See contributing.md in syntax-tree/.github for ways to get started. See support.md for ways to get help.

    This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

    License

    MIT © Titus Wormer

    Install

    npm i hast-util-is-element

    DownloadsWeekly Downloads

    507,464

    Version

    2.1.2

    License

    MIT

    Unpacked Size

    20.2 kB

    Total Files

    5

    Last publish

    Collaborators

    • wooorm
    • kmck