module.exports = { makeText: function (textVal) { return { type: 'text', value: textVal }; }, makeEmphasis: function (content) { return { type: 'emphasis', children: content }; }, makeHeading: function (caption, depth) { return { type: 'heading', depth: depth, children: [caption] }; }, makeLink: function (caption, url, title = null) { return { type: 'link', title: title, url: url, children: [caption] }; }, makeListItem: function (itemValue) { return { type: 'listItem', loose: false, children: [itemValue] }; }, makeListUnordered: function (itemsArray) { return { type: 'list', ordered: false, children: itemsArray, loose: false }; }, makeTable: function (colAlignArray, rowArray) { return { type: 'table', align: colAlignArray, children: rowArray }; }, makeTableRow: function (cellArray) { return { type: 'tableRow', children: cellArray }; }, makeTableCell: function (content) { return { type: 'tableCell', children: content }; }, makeInlineCode: function (codeText) { return { "type": "inlineCode", "value": codeText } }, makeImage: function (url, alt) { return { type: 'image', url: url, alt: alt }; }, isHeading: function (node) { return node.type === 'heading'; }, isListUnordered: function (node) { return node.type === 'list' && !node.ordered; }, isParagraph: function (node) { return node.type === 'paragraph'; }, isLink: function (node) { return node.type === 'inlineCode'; } };