This module exports a cross-platform window instance object.
- In the browser it just exports the global window object
- In NodeJS, it exports the newly created JSDOM window instance
Thus, DOM-dependent modules become compatible and can be used both in NodeJS and in the browser.
npm install xwindow
ES2015
import window from 'xwindow'
CommonJS
const window = require('xwindow')
import window from 'xwindow'
const { document, CustomEvent, DocumentFragment, Node } = window
const node = document.createElement('div')
const fragment = new DocumentFragment
fragment.append(node)
if(node.nodeType === Node.ELEMENT_NODE) {
node.dispatchEvent(new CustomEvent('answer', { detail : 42 }))
}