|
|
- 'use strict'
-
- const implementation = {
- isTag: node => node !== undefined && 'name' in node,
- getAttributeValue: ( elem, name ) => {
- if( implementation.isTag( elem ) && elem.attribs ) return elem.attribs[ name ]
- },
- getChildren: node => node.children,
- getName: elem => {
- if( implementation.isTag( elem ) ) return elem.name
- },
- getParent: node => node.parent,
- getText: node => node.children.map( child => {
- if( child.text ) return child.text
-
- if( implementation.isTag( child ) ) return implementation.getText( child )
-
- return ''
- }).join( '' )
- }
-
- module.exports = implementation
|