1 line
1.3 KiB
JavaScript
1 line
1.3 KiB
JavaScript
"use strict";function e(e,r){var n;return n=/__(?:(package-name)|([pP]ackageName)|(package_name))__/g,e.replace(n,r)}function r(e,r){var n;return n=/__(?:(display-name))__/g,e.replace(n,r)}function n(e){return e=e.replace(/-+|_+/g," "),e=e.replace(/\s+/g," ").trim(),e.replace(/\w\S*/g,function(e){return e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()})}function a(e,r){var a;return a=/__(?:(skill-page-title))__/g,e.replace(a,n(r))}var t=function(e){return e&&e.__esModule?e["default"]:e},c=t(require("fs-plus")),i=t(require("path")),l=t(require("wrench")),s=t(require("npm"));module.exports=function(n,t,u,o,p){var m,_,g,d,y,S,f,h,v,k=i.resolve(__dirname,"../../templates",n);try{c.statSync(k)}catch(b){p("Template type "+n+" does not exist")}for(null===u&&(u=i.basename(t)),c.makeTreeSync(t),y=l.readdirSyncRecursive(k),f=[],g=0,d=y.length;d>g;g++)m=y[g],v=i.resolve(k,m),S=v.replace(k,""),S=S.replace(/^\//,""),S=S.replace(/\.template$/,""),h=i.join(t,S),c.existsSync(h)||(c.isDirectorySync(v)?f.push(c.makeTreeSync(h)):c.isFileSync(v)?(c.makeTreeSync(i.dirname(h)),_=c.readFileSync(v),"package.json"===i.basename(v)?(_=e(_.toString(),u),_=r(_.toString(),o)):"index.html"===i.basename(v)&&(_=a(_.toString(),u)),f.push(c.writeFileSync(h,_))):f.push(void 0));s.load(function(){s.commands.install(t,[],function(e){p(e?"Error during npm install: "+e:null)})})}; |