UNPKG

ng-make

Version:

Easy tools for create project in AngularJS

80 lines (55 loc) 1.75 kB
var stringNEWSTATE = "//%NEW_STATE"; var stringDEFAULT ="//%DEFAULT_STATE"; exports.loadState = function(fs){ var ret = fs.existsSync("./state.json"); if(ret){ return JSON.parse(fs.readFileSync('./state.json', 'utf8')); }else{ return ret; } } exports.saveState = function(fs,state){ fs.open("./state.json",'w+',function(err,fd){ fs.write(fd,JSON.stringify(state)); }) } exports.createNewState = function(fs,stateData,config,isAbstract,defaultState){ var file = fs.readFileSync('settings/config.routes.js','utf8'); //console.log(file); var str = file.replace(stringNEWSTATE,genStateApp(stateData,isAbstract)); if(defaultState){ str = str.replace(stringDEFAULT,genDefaultState(stateData)); } fs.open("settings/config.routes.js",'w+',function(err,fd){ fs.write(fd,str); }) } exports.updateControllerFile = function(usageModule,fs,states){ //TEST states.forEach(function(val,id){ if(id!=0){ var file = fs.readFileSync("js/" + val.name + "CTRL.js", "utf8"); if (usageModule) { file = file.replace("$scope", "$scope," + usageModule); } else { } fs.open("js/"+val.name+"CTRL.js","w+",function(err,fd){ fs.write(fd,file); }); } }) } function genDefaultState(stateData){ var jsDefault ="$urlRouterProvider.otherwise("+stateData.url+");\n"; return jsDefault } function genStateApp(state,isAbstract){ var statejs = ".state('"+state.name+"',{\n\t\t\t\t\turl:"+state.url+ ",\n\t\t\t\t\ttemplateUrl:"+state.templateUrl+ ",\n\t\t\t\t\tcontroller:"+state.controller+"" if(isAbstract){ statejs+=",\n\t\t\t\t\tabstract:true"; } statejs += "\n\t\t\t\t}\n\t\t\t)\n\t\t\t"+stringNEWSTATE+"\n"; return statejs; }