grunt-html-dom-snapshot
Version:
Takes snapshots of the HTML markup on web pages - their immediate DOM content - and screenshots of their viewport - how they look like.
33 lines (30 loc) • 1.03 kB
JavaScript
module.exports = {
detect: function (command) {
return !!command.setViewport
},
perform: function (grunt, target, client, command, options) {
const lastViewport = options.lastViewport
let setViewport = command.setViewport
let prefix
if (!(setViewport.width && setViewport.height)) {
prefix = 'original '
setViewport = options.viewport
} else {
prefix = ''
}
if (setViewport.width === lastViewport.width &&
setViewport.height === lastViewport.height) {
grunt.output.writeln('Retaining ' + prefix + 'viewport size ' +
setViewport.width + 'x' + setViewport.height + '.')
return Promise.resolve()
}
grunt.output.writeln('Resize viewport to ' + prefix +
setViewport.width + 'x' + setViewport.height + '.')
lastViewport.width = setViewport.width
lastViewport.height = setViewport.height
lastViewport.explicit = true
return client.setWindowRect(
null, null, setViewport.width, setViewport.height)
}
}