derby-webdriverio
Version:
Webdriver.io for Derby.js
34 lines (28 loc) • 1.02 kB
text/coffeescript
module.exports = (app, waitTimeout = 10) ->
waitWds = (cb) ->
_waitWds = ->
if document.documentElement.dataset.wds
cb()
else
setTimeout _waitWds, 50
_waitWds()
setPageRendered = (initial) ->
return if app.derby.util.isServer
_setPageRendered = ->
setTimeout ->
window._rendered = true
document.documentElement.classList.add '__rendered'
, waitTimeout
if initial and app.webpack and window.env?.NODE_ENV isnt 'production'
waitWds _setPageRendered
else
_setPageRendered()
removePageRendered = ->
return if app.derby.util.isServer
delete window._rendered
document.documentElement.classList.remove '__rendered'
app.on 'ready', setPageRendered.bind(@, true)
app.on 'route', removePageRendered
app.on 'routeDone', setPageRendered