motion
Version:
motion - moving development forward
33 lines (24 loc) • 1.25 kB
JavaScript
exports.__esModule = true;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var _state = require('../state');
var _state2 = _interopRequireDefault(_state);
var _libHelpers = require('../lib/helpers');
exports['default'] = {
enter: function enter() {
_state.resetProgramState();
},
exit: function exit(node, parent, scope, file) {
_state2['default'].meta.file = file.opts.filename;
if (_libHelpers.options.onMeta) {
_libHelpers.options.onMeta(_state2['default'].meta);
}
var location = _libHelpers.relativePath(file.opts.filename);
if (!file.metadata.exports && !_state2['default'].hasExports) {
// function(){ Motion.file('${location}',function(require, exports){ ${contents}\n })\n}()
node.body = [_libHelpers.t.expressionStatement(
// closure
_libHelpers.t.callExpression(_libHelpers.t.functionExpression(null, [], _libHelpers.t.blockStatement([_libHelpers.t.callExpression(_libHelpers.t.identifier('Motion.file'), [_libHelpers.t.literal(location), _libHelpers.t.functionExpression(null, [_libHelpers.t.identifier('require')], _libHelpers.t.blockStatement(node.body))])])), []))];
}
}
};
module.exports = exports['default'];