mirror of
https://github.com/transloadit/uppy.git
synced 2026-07-28 20:40:06 +00:00
26 lines
601 B
TypeScript
26 lines
601 B
TypeScript
import isDOMElement from './isDOMElement.js'
|
|
|
|
function findAllDOMElements<T>(
|
|
element: T,
|
|
context?: ParentNode,
|
|
): T extends Element ? [T]
|
|
: T extends Node | string ? Element[] | null
|
|
: null
|
|
|
|
/**
|
|
* Find one or more DOM elements.
|
|
*/
|
|
function findAllDOMElements(element: unknown): Node[] | null {
|
|
if (typeof element === 'string') {
|
|
const elements = document.querySelectorAll(element)
|
|
return elements.length === 0 ? null : Array.from(elements)
|
|
}
|
|
|
|
if (typeof element === 'object' && isDOMElement(element)) {
|
|
return [element]
|
|
}
|
|
|
|
return null
|
|
}
|
|
|
|
export default findAllDOMElements
|