import * as babel from 'babel-core'; import presetEs2015 from 'babel-preset-es2015'; import presetReact from 'babel-preset-react'; import { Observable } from 'rx'; /* eslint-disable import/no-unresolved */ import loopProtect from 'loop-protect'; /* eslint-enable import/no-unresolved */ import { updateContents } from '../../common/utils/polyvinyl'; const babelOptions = { presets: [ presetEs2015, presetReact ] }; loopProtect.hit = function hit(line) { var err = 'Exiting potential infinite loop at line ' + line + '. To disable loop protection, write: \n\/\/ noprotect\nas the first ' + 'line. Beware that if you do have an infinite loop in your code, ' + 'this will crash your browser.'; throw new Error(err); }; const transformersForHtmlJS = { ext: /html|js/, transformers: [ { name: 'add-loop-protect', transformer: function addLoopProtect(file) { const _contents = file.contents.toLowerCase(); if (file.ext === 'html' && !_contents.includes('