/** * Adds copy code buttons to code fields. The provided doc should be a document object provided by JSDOM. The same * document will be returned with the appropriate DOM manipulations. */ module.exports = function (doc) { doc.querySelectorAll('pre > code').forEach(code => { const pre = code.closest('pre'); const button = doc.createElement('button'); button.setAttribute('type', 'button'); button.classList.add('copy-code-button'); button.setAttribute('aria-label', 'Copy'); button.innerHTML = ` `; pre.append(button); }); return doc; };