UNPKG

bitbox-compiler

Version:

bitbox /unbox

31 lines (23 loc) 4.2 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = function (node, meta) { if (node.attrs.length === 1 && node.attrs[0].key === 'import' && node.attrs[0].type === 'static') { return 'import \'' + node.attrs[0].value + '\';\n'; } var keys = Object.keys(node.props); //if (keys[0].indexOf('-') > -1) keys[0] = `{ ${ camelCase(keys[0]) } }` var name = (0, _helpers.camelCase)(keys[0]); var exp = node.attrs.map(function (prop) { if (prop.type === 'value') return '{ ' + prop.value + ' as ' + (0, _helpers.camelCase)(prop.key) + ' }';else return '' + (0, _helpers.camelCase)(prop.key); }); var src = node.props.from ? node.props.from : exp[0]; meta[name] = src; //.replace(/['"`]/g, '') if (src.indexOf('!box') > -1) // return `` // `// import ${ name } | $.import('${ name }')\n` return 'import { ' + name + ' } from ' + (node.props.from ? src : 'from \'' + src + '\'') + ';\n';else return 'import ' + exp.join(' ') + ' ' + (node.props.from ? src : 'from \'' + src + '\'') + ';\n'; //return `import ${ exp.join(` `) } ${ node.props.from ? src : `from '${ src }'` };\n` }; var _helpers = require('../helpers'); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub2Rlcy9pbXBvcnQuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O2tCQUVlLFVBQVMsSUFBSSxFQUFFLElBQUksRUFBRTs7QUFFbkMsS0FBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQ3ZCLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLFFBQVEsSUFDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFO0FBQ25DLHVCQUFtQixJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssV0FBTztFQUM3Qzs7QUFFRixLQUFJLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7Ozs7QUFBQSxBQUlsQyxLQUFJLElBQUksR0FBRyx3QkFBVSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTs7QUFFN0IsS0FBSSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsVUFBQSxJQUFJLEVBQUk7QUFDaEMsTUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFDeEIsY0FBYSxJQUFJLENBQUMsS0FBSyxZQUFTLHdCQUFVLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBSyxLQUV4RCxZQUFXLHdCQUFVLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBRztFQUNsQyxDQUFDLENBQUE7QUFDRixLQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDdEQsS0FBSSxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUc7QUFBQSxBQUNoQixLQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDOztBQUUzQix1QkFBbUIsSUFBSSxpQkFBWSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxHQUFHLGVBQWEsR0FBRyxRQUFJLFNBQU0sS0FFbEYsbUJBQWtCLEdBQUcsQ0FBQyxJQUFJLEtBQUssVUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxHQUFHLGVBQWEsR0FBRyxRQUFJLFNBQU07O0NBR3JGO0FBSHFGO0FBNUJ0RixxQ0FBc0MiLCJmaWxlIjoiaW1wb3J0LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY2FtZWxDYXNlIH0gZnJvbSAnLi4vaGVscGVycydcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24obm9kZSwgbWV0YSkge1xuXG5cdGlmIChub2RlLmF0dHJzLmxlbmd0aCA9PT0gMVxuXHRcdCYmIG5vZGUuYXR0cnNbMF0ua2V5ID09PSAnaW1wb3J0J1xuXHRcdCYmIG5vZGUuYXR0cnNbMF0udHlwZSA9PT0gJ3N0YXRpYycpIHtcblx0XHRcdHJldHVybiBgaW1wb3J0ICckeyBub2RlLmF0dHJzWzBdLnZhbHVlIH0nO1xcbmBcblx0XHR9XG5cblx0bGV0IGtleXMgPSBPYmplY3Qua2V5cyhub2RlLnByb3BzKVxuXG5cdC8vaWYgKGtleXNbMF0uaW5kZXhPZignLScpID4gLTEpIGtleXNbMF0gPSBgeyAkeyBjYW1lbENhc2Uoa2V5c1swXSkgfSB9YFxuXG5cdGxldCBuYW1lID0gY2FtZWxDYXNlKGtleXNbMF0pXG5cblx0bGV0IGV4cCA9IG5vZGUuYXR0cnMubWFwKHByb3AgPT4ge1xuXHRcdGlmIChwcm9wLnR5cGUgPT09ICd2YWx1ZScpXG5cdFx0XHRyZXR1cm4gYHsgJHsgcHJvcC52YWx1ZSB9IGFzICR7IGNhbWVsQ2FzZShwcm9wLmtleSkgfSB9YFxuXHRcdGVsc2Vcblx0XHRcdHJldHVybiBgJHsgY2FtZWxDYXNlKHByb3Aua2V5KSB9YFxuXHR9KVxuXHRjb25zdCBzcmMgPSBub2RlLnByb3BzLmZyb20gPyBub2RlLnByb3BzLmZyb20gOiBleHBbMF1cblx0bWV0YVtuYW1lXSA9IHNyYyAvLy5yZXBsYWNlKC9bJ1wiYF0vZywgJycpXG5cdGlmIChzcmMuaW5kZXhPZignIWJveCcpID4gLTEpXG5cdC8vXHRyZXR1cm4gYGAgLy8gYC8vIGltcG9ydCAkeyBuYW1lIH0gfCAkLmltcG9ydCgnJHsgbmFtZSB9JylcXG5gXG5cdFx0cmV0dXJuIGBpbXBvcnQgeyAke25hbWV9IH0gZnJvbSAkeyBub2RlLnByb3BzLmZyb20gPyBzcmMgOiBgZnJvbSAnJHsgc3JjIH0nYCB9O1xcbmBcblx0ZWxzZVxuXHRcdHJldHVybiBgaW1wb3J0ICR7IGV4cC5qb2luKGAgYCkgfSAkeyBub2RlLnByb3BzLmZyb20gPyBzcmMgOiBgZnJvbSAnJHsgc3JjIH0nYCB9O1xcbmBcblx0Ly9yZXR1cm4gYGltcG9ydCAkeyBleHAuam9pbihgIGApIH0gJHsgbm9kZS5wcm9wcy5mcm9tID8gc3JjIDogYGZyb20gJyR7IHNyYyB9J2AgfTtcXG5gXG5cbn1cbiJdfQ==