UNPKG

fed-maker

Version:

fed-maker - UI maker, build and manage any ui

1 lines 6.5 kB
"use strict";function findDefaultExportsNode(e){var r=null;return(0,_utils.traverse)(e,function(e){"ExportDefaultDeclaration"===e.type&&(r=e.declaration)}),r}function findExportsNode(e){var r=null;return(0,_utils.traverse)(e,function(e){"ExportDeclaration"===e.type&&(r=e.declaration)}),r}function getImportsObject(e){var r={};return(0,_utils.traverse)(e,function(e){if("ImportDeclaration"===e.type){var t=e.specifiers,o=e.source;t&&t.length>0&&o&&t.forEach(function(e){var t=e.type,n=e.local,p=o.value;"ImportNamespaceSpecifier"===t&&n&&"Identifier"===n.type&&p?r[n.name]={source:p}:"ImportDefaultSpecifier"===t&&n&&"Identifier"===n.type&&p?r[n.name]={source:p}:"ImportSpecifier"===t&&n&&"Identifier"===n.type&&p&&(r[n.name]={source:p,member:!0})})}}),r}function getExportObject(e){var r={};return(0,_utils.traverseWithResult)(e,function(e,r){var t=e.type,o=e.key,n=e.value;if(n&&o&&"Property"===t)if("Identifier"===o.type){if("Identifier"===n.type)return r[o.name]=n.name,r;if("ObjectExpression"===n.type)return r[o.name]=r[o.name]||{},r[o.name]}else if("Literal"===o.type){if("Identifier"===n.type)return r[o.value]=n.name,r;if("ObjectExpression"===n.type)return r[o.value]=r[o.name]||{},r[o.name]}return r},r),r}function getNamedExportObject(e){var r=void 0;return(0,_utils.traverse)(e,function(e){if("ExportNamedDeclaration"===e.type&&e.specifiers){r={};var t=e.specifiers;t.forEach(function(e){var t=(e.type,e.exported),o=e.local;t&&t.name&&o&&o.name&&(r[t.name]=o.name)})}}),r}function addNamespaceImport(e,r,t){if(e.body=e.body||[],e.body.length>0)for(var o=0;o>=0;)o=(0,_lodash.findIndex)(e.body,function(e){var o=e.type,n=e.specifiers,p=e.source;if("ImportDeclaration"===o&&n&&p){var i=n[0],a=i.type,s=i.local,d=p.value;if("ImportNamespaceSpecifier"===a&&s&&d)return s.name===r||d===t}return!1}),o>=0&&e.body.splice(o,1);for(var n=-1,p=0;p<e.body.length;p++){var i=e.body[p].type;"ImportDeclaration"===i&&(n=p)}return e.body.splice(n>=0?n+1:0,0,{type:"ImportDeclaration",specifiers:[{type:"ImportNamespaceSpecifier",local:{type:"Identifier",name:r}}],source:{type:"Literal",value:t,raw:"'"+t+"'"}}),e}function addDefaultImport(e,r,t){if(e.body=e.body||[],e.body.length>0)for(var o=0;o>=0;)o=(0,_lodash.findIndex)(e.body,function(e){var o=e.type,n=e.specifiers,p=e.source;if("ImportDeclaration"===o&&n&&p){var i=n[0],a=i.type,s=i.local,d=p.value;if("ImportDefaultSpecifier"===a&&s&&d)return s.name===r||d===t}return!1}),o>=0&&e.body.splice(o,1);for(var n=-1,p=0;p<e.body.length;p++){var i=e.body[p].type;"ImportDeclaration"===i&&(n=p)}return e.body.splice(n>=0?n+1:0,0,{type:"ImportDeclaration",specifiers:[{type:"ImportDefaultSpecifier",local:{type:"Identifier",name:r}}],source:{type:"Literal",value:t,raw:"'"+t+"'"}}),e}function addNamedExport(e,r){var t=void 0;if((0,_utils.traverse)(e,function(e){"ExportNamedDeclaration"===e.type&&(t=e)}),t){if(t.specifiers=t.specifiers||[],t.specifiers.length>0){var o=(0,_lodash.findIndex)(t.specifiers,function(e){var t=e.type,o=e.exported,n=e.local;if("ExportSpecifier"===t&&o&&n)return o.name===r});o>=0&&t.specifiers.splice(o,1)}t.specifiers.push({type:"ExportSpecifier",exported:{type:"Identifier",name:r},local:{type:"Identifier",name:r}})}else e.body=e.body||[],e.body.push({type:"ExportNamedDeclaration",declaration:null,specifiers:[{type:"ExportSpecifier",exported:{type:"Identifier",name:r},local:{type:"Identifier",name:r}}]});return e}function createObjectExpressionNode(){return{type:"ObjectExpression",properties:[]}}function addPropertyToObjectNode(e,r,t){if("ObjectExpression"===e.type){e.properties=e.properties||[];var o={type:"Property",key:{type:"Identifier",name:r},value:{type:"Identifier",name:t},computed:!1,kind:"init",method:!1,shorthand:!1};r===t&&(o.shorthand=!0),e.properties.push(o)}return e}function deletePropertyFromObjectNode(e,r,t){if("ObjectExpression"===e.type){e.properties=e.properties||[];var o=[];e.properties.forEach(function(e){var n=e.type,p=e.key,i=e.value;"Property"===n&&p&&i&&p.name!==r&&i.name!==t&&o.push(e)}),e.properties=o}return e}function findPropertyInObjectNode(e,r){var t=void 0;return"ObjectExpression"===e.type&&e.properties&&(t=e.properties.find(function(e){var t=e.type,o=e.key,n=e.value;return!("Property"!==t||!o||!n)&&o.name===r})),t}function findPropertyByValueInObjectNode(e,r){var t=void 0;return"ObjectExpression"===e.type&&e.properties&&(t=e.properties.find(function(e){var t=e.type,o=e.key,n=e.value;return!("Property"!==t||!o||!n)&&n.name===r})),t}function addSpreadElementToArrayNode(e,r){return e&&"ArrayExpression"===e.type&&(e.elements=e.elements||[],e.elements.push({type:"SpreadElement",argument:{type:"Identifier",name:r}})),e}function deleteSpreadElementFromArrayNode(e,r){if(e&&"ArrayExpression"===e.type){var t=[],o=e.elements;o&&o.length>0&&o.forEach(function(e){var o=e.type,n=e.argument;"SpreadElement"===o&&n&&n.name!==r&&t.push(e)}),e.elements=t}return e}function findDefaultImport(e,r){for(var t=void 0,o=0;o<e.body.length;o++){var n=e.body[o],p=n.type,i=n.source,a=n.specifiers;if("ImportDeclaration"===p&&i&&i.value===r){if(a&&a.length>0){var s=a.find(function(e){return e.type&&"ImportDefaultSpecifier"===e.type&&e.local});s&&(t=s.local.name)}break}}return t}function getObjectAssignmentPropNames(e){var r=[];return(0,_utils.traverse)(e,function(e){if("AssignmentExpression"===e.type&&e.right&&"ObjectExpression"===e.right.type){var t=e.right.properties;t&&t.length>0&&t.forEach(function(e){var t=e.key;t&&r.push(t.name)})}}),r}Object.defineProperty(exports,"__esModule",{value:!0}),exports.findDefaultExportsNode=findDefaultExportsNode,exports.findExportsNode=findExportsNode,exports.getImportsObject=getImportsObject,exports.getExportObject=getExportObject,exports.getNamedExportObject=getNamedExportObject,exports.addNamespaceImport=addNamespaceImport,exports.addDefaultImport=addDefaultImport,exports.addNamedExport=addNamedExport,exports.createObjectExpressionNode=createObjectExpressionNode,exports.addPropertyToObjectNode=addPropertyToObjectNode,exports.deletePropertyFromObjectNode=deletePropertyFromObjectNode,exports.findPropertyInObjectNode=findPropertyInObjectNode,exports.findPropertyByValueInObjectNode=findPropertyByValueInObjectNode,exports.addSpreadElementToArrayNode=addSpreadElementToArrayNode,exports.deleteSpreadElementFromArrayNode=deleteSpreadElementFromArrayNode,exports.findDefaultImport=findDefaultImport,exports.getObjectAssignmentPropNames=getObjectAssignmentPropNames;var _lodash=require("lodash"),_utils=require("./utils.js");