/**
* Kicks off less and compiles any stylesheets * used in the browser distributed version of less * to kick-start less using the browser api */
/*global window, document */
// shim Promise if required require('promise/polyfill.js');
var options = window.less || {}; require(“./add-default-options”)(window, options);
var less = module.exports = require(“./index”)(window, options);
window.less = less;
var css, head, style;
// Always restore page visibility function resolveOrReject(data) {
if (data.filename) { console.warn(data); } if (!options.async) { head.removeChild(style); }
}
if (options.onReady) {
if (/!watch/.test(window.location.hash)) { less.watch(); } // Simulate synchronous stylesheet loading by blocking page rendering if (!options.async) { css = 'body { display: none !important }'; head = document.head || document.getElementsByTagName('head')[0]; style = document.createElement('style'); style.type = 'text/css'; if (style.styleSheet) { style.styleSheet.cssText = css; } else { style.appendChild(document.createTextNode(css)); } head.appendChild(style); } less.registerStylesheetsImmediately(); less.pageLoadFinished = less.refresh(less.env === 'development').then(resolveOrReject, resolveOrReject);
}