1234567891011121314151617181920212223242526272829303132 |
- import fromFunction from './from-function';
- import AbstractVirtualNode from '../../core/base/virtual-node/abstract-virtual-node';
- import { getNodeFromTree } from '../../core/utils';
- /**
- * Check if a virtual node matches some attribute(s)
- *
- * Note: matches.attributes(vNode, matcher) can be indirectly used through
- * matches(vNode, { attributes: matcher })
- *
- * Example:
- * ```js
- * matches.attributes(vNode, {
- * 'aria-live': 'assertive', // Simple string match
- * 'aria-expanded': /true|false/i, // either boolean, case insensitive
- * })
- * ```
- *
- * @deprecated HTMLElement is deprecated, use VirtualNode instead
- *
- * @param {HTMLElement|VirtualNode} vNode
- * @param {Object} Attribute matcher
- * @returns {Boolean}
- */
- function attributes(vNode, matcher) {
- if (!(vNode instanceof AbstractVirtualNode)) {
- vNode = getNodeFromTree(vNode);
- }
- return fromFunction(attrName => vNode.attr(attrName), matcher);
- }
- export default attributes;
|