UNPKG

motion

Version:

motion - moving development forward

83 lines (59 loc) 1.92 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.Scanner = undefined; var _bundler = require('../bundler'); var _bundler2 = _interopRequireDefault(_bundler); var _cache = require('../cache'); var _cache2 = _interopRequireDefault(_cache); var _opts = require('../opts'); var _opts2 = _interopRequireDefault(_opts); var _helpers = require('./lib/helpers'); var _fns = require('../lib/fns'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const viewMatcher = /^view\s+([\.A-Za-z_0-9]*)\s*\{/; let views = []; const Scanner = exports.Scanner = { pre(filePath, source, next) { let inView = false; let viewNames = []; source = source.split("\n").map((line, index) => { let result = line; let view = result.match(viewMatcher); if (view && view.length) { inView = true; viewNames.push(result.split(' ')[1]); } const JSXstart = inView && line.charAt(2) == '<' && line.charAt(3) != '/'; if (JSXstart) result = ';' + result.substr(1); if (inView && line.charAt(0) == '}') inView = false; return result; }).join("\n"); next(source); } }; function compile(type) { return _helpers.through.obj(function (file, enc, next) { var _this = this; if (file.isNull()) { next(null, file); return; } try { let res = Scanner[type](file.path, file.contents.toString(), function (source) { let fileProps = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; file.contents = new Buffer(source || ''); // add fileprops coming from compilers Object.assign(file, fileProps); _this.push(file); next(); }); } catch (err) { this.emit('error', err); next(); } }); } exports.default = compile; //# sourceMappingURL=scanner.js.map