create-novely
Version:
Простой и быстрый способ начать пользоваться Novely
2 lines • 3.26 kB
JavaScript
;var L=Object.create;var d=Object.defineProperty;var O=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var v=Object.getPrototypeOf,B=Object.prototype.hasOwnProperty;var R=(e,o,r,s)=>{if(o&&typeof o=="object"||typeof o=="function")for(let n of S(o))!B.call(e,n)&&n!==r&&d(e,n,{get:()=>o[n],enumerable:!(s=O(o,n))||s.enumerable});return e};var x=(e,o,r)=>(r=e!=null?L(v(e)):{},R(o||!e||!e.__esModule?d(r,"default",{value:e,enumerable:!0}):r,e));var c=x(require("fs")),a=x(require("path"));var l=!0,p=typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{},g=0;if(p.process&&p.process.env&&p.process.stdout){let{FORCE_COLOR:e,NODE_DISABLE_COLORS:o,NO_COLOR:r,TERM:s,COLORTERM:n}=p.process.env;o||r||e==="0"?l=!1:e==="1"||e==="2"||e==="3"?l=!0:s==="dumb"?l=!1:"CI"in p.process.env&&["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE","DRONE"].some(i=>i in p.process.env)?l=!0:l=process.stdout.isTTY,l&&(process.platform==="win32"||n&&(n==="truecolor"||n==="24bit")?g=3:s&&(s.endsWith("-256color")||s.endsWith("256"))?g=2:g=1)}var m={enabled:l,supportLevel:g};function t(e,o,r=1){let s=`\x1B[${e}m`,n=`\x1B[${o}m`,i=new RegExp(`\\x1b\\[${o}m`,"g");return u=>m.enabled&&m.supportLevel>=r?s+(""+u).replace(i,s)+n:""+u}var f=t(0,0),M=t(1,22),N=t(2,22),G=t(3,23),F=t(4,24),j=t(7,27),A=t(8,28),P=t(9,29),Y=t(30,39),y=t(31,39),V=t(32,39),W=t(33,39),b=t(34,39),J=t(35,39),U=t(36,39),z=t(97,39),D=t(90,39),H=t(37,39),K=t(91,39),q=t(92,39),Q=t(93,39),X=t(94,39),Z=t(95,39),ee=t(96,39),te=t(40,49),oe=t(41,49),ne=t(42,49),re=t(43,49),se=t(44,49),ce=t(45,49),ie=t(46,49),le=t(107,49),pe=t(100,49),ae=t(101,49),ue=t(102,49),ge=t(103,49),xe=t(104,49),fe=t(105,49),de=t(106,49),me=t(47,49);var h=x(require("prompts"));async function $(){let e=!1,{projectName:o,template:r}=await(0,h.default)([{type:"text",name:"projectName",message:f("Project name:"),initial:"my-novely-project"},{type:"select",name:"template",message:f("Select a template:"),choices:[{title:b("Basic"),value:"basic"}],initial:0}],{onCancel:()=>{e=!0,console.error(y("\u2716")+" Operation cancelled")}});if(e)return;let s=a.default.resolve(__dirname,"../"),n=_(o||"");if(!T(n)){let i=n==="."?"Current directory":`Target directory "${n}"`;return console.error(`${i} is not empty. Operation cancelled.`)}c.default.mkdirSync(n,{recursive:!0}),C(a.default.resolve(s,`./template-${r}`),n),I(a.default.join(n,"package.json"),i=>{let u=JSON.parse(i);return u.name=E(n),JSON.stringify(u,null,2)})}$().catch(e=>console.error(e));function w(e,o){c.default.statSync(e).isDirectory()?C(e,o):c.default.copyFileSync(e,o)}function E(e){return e.trim().toLowerCase().replace(/\s+/g,"-").replace(/^[._]/,"").replace(/[^a-z\d\-~]+/g,"-")}function C(e,o){c.default.mkdirSync(o,{recursive:!0});for(let r of c.default.readdirSync(e)){let s=a.default.resolve(e,r),n=a.default.resolve(o,r);w(s,n)}}function T(e){if(!c.default.existsSync(e))return!0;let o=c.default.readdirSync(e);return o.length===0||o.length===1&&o[0]===".git"}function I(e,o){if(!c.default.existsSync(e))return;let r=c.default.readFileSync(e,"utf-8");c.default.writeFileSync(e,o(r),"utf-8")}function _(e){return(e==null?void 0:e.trim().replace(/\/+$/g,""))||""}
//# sourceMappingURL=index.js.map