All files / src/helpers/markup getSourcesFromNodeList.js

100% Statements 11/11
75% Branches 3/4
100% Functions 2/2
100% Lines 11/11

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31                    5x   5x 87x   87x 149x 149x 149x   149x 99x       87x     5x    
import getNodeContent from "./getNodeContent.js"
 
/**
 * This extract sources from a given NodeList of HTMLElement items
 *
 * @param {NodeList} nodeList
 * @param {object} keys
 * @return {Array} Return a list of sources mapped
 */
export default (nodeList, keys) => {
  let sources = []
 
  nodeList.forEach((node) => {
    let source = {}
 
    for (const key in keys) {
      Eif (Object.prototype.hasOwnProperty.call(keys, key)) {
        const selector = keys[key]
        const content = getNodeContent(node, selector)
 
        if (content) {
          source[key] = content
        }
      }
    }
    sources = [...sources, source]
  })
 
  return sources
}