create-ts-vite-project 0.3.1 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.js +1 -1
- package/package.json +2 -21
package/dist/index.min.js
CHANGED
|
@@ -95,4 +95,4 @@ Filtered results for: ${this.inputValue?this.inputValue:V.gray("Enter something
|
|
|
95
95
|
`}renderOption(e,t,r){let s;return t.disabled?s=e===r?V.gray().underline(t.title):V.strikethrough().gray(t.title):s=e===r?V.cyan().underline(t.title):t.title,(t.selected?V.green(ie.radioOn):ie.radioOff)+" "+s}renderDoneOrInstructions(){if(this.done)return this.value.filter(t=>t.selected).map(t=>t.title).join(", ");let e=[V.gray(this.hint),this.renderInstructions(),this.renderCurrentInput()];return this.filteredOptions.length&&this.filteredOptions[this.cursor].disabled&&e.push(V.yellow(this.warn)),e.join(" ")}render(){if(this.closed)return;this.firstRender&&this.out.write(zl.hide),super.render();let e=[mn.symbol(this.done,this.aborted),V.bold(this.msg),mn.delimiter(!1),this.renderDoneOrInstructions()].join(" ");this.showMinError&&(e+=V.red(`You must select a minimum of ${this.minSelected} choices.`),this.showMinError=!1),e+=this.renderOptions(this.filteredOptions),this.out.write(this.clear+e),this.clear=pn(e,this.out.columns)}};gn.exports=Ut});var Sn=u((wa,xn)=>{var bn=f(),Wl=A(),{style:yn,clear:Kl}=S(),{erase:Xl,cursor:wn}=p(),Jt=class extends Wl{constructor(e={}){super(e),this.msg=e.message,this.value=e.initial,this.initialValue=!!e.initial,this.yesMsg=e.yes||"yes",this.yesOption=e.yesOption||"(Y/n)",this.noMsg=e.no||"no",this.noOption=e.noOption||"(y/N)",this.render()}reset(){this.value=this.initialValue,this.fire(),this.render()}exit(){this.abort()}abort(){this.done=this.aborted=!0,this.fire(),this.render(),this.out.write(`
|
|
96
96
|
`),this.close()}submit(){this.value=this.value||!1,this.done=!0,this.aborted=!1,this.fire(),this.render(),this.out.write(`
|
|
97
97
|
`),this.close()}_(e,t){return e.toLowerCase()==="y"?(this.value=!0,this.submit()):e.toLowerCase()==="n"?(this.value=!1,this.submit()):this.bell()}render(){this.closed||(this.firstRender?this.out.write(wn.hide):this.out.write(Kl(this.outputText,this.out.columns)),super.render(),this.outputText=[yn.symbol(this.done,this.aborted),bn.bold(this.msg),yn.delimiter(this.done),this.done?this.value?this.yesMsg:this.noMsg:bn.gray(this.initialValue?this.yesOption:this.noOption)].join(" "),this.out.write(Xl.line+wn.to(0)+this.outputText))}};xn.exports=Jt});var On=u((xa,qn)=>{"use strict";qn.exports={TextPrompt:ws(),SelectPrompt:Os(),TogglePrompt:Ts(),DatePrompt:en(),NumberPrompt:nn(),MultiselectPrompt:Lt(),AutocompletePrompt:fn(),AutocompleteMultiselectPrompt:vn(),ConfirmPrompt:Sn()}});var Mn=u(Pn=>{"use strict";var w=Pn,Ql=On(),je=i=>i;function $(i,e,t={}){return new Promise((r,s)=>{let n=new Ql[i](e),o=t.onAbort||je,h=t.onSubmit||je,l=t.onExit||je;n.on("state",e.onState||je),n.on("submit",a=>r(h(a))),n.on("exit",a=>r(l(a))),n.on("abort",a=>s(o(a)))})}w.text=i=>$("TextPrompt",i);w.password=i=>(i.style="password",w.text(i));w.invisible=i=>(i.style="invisible",w.text(i));w.number=i=>$("NumberPrompt",i);w.date=i=>$("DatePrompt",i);w.confirm=i=>$("ConfirmPrompt",i);w.list=i=>{let e=i.separator||",";return $("TextPrompt",i,{onSubmit:t=>t.split(e).map(r=>r.trim())})};w.toggle=i=>$("TogglePrompt",i);w.select=i=>$("SelectPrompt",i);w.multiselect=i=>{i.choices=[].concat(i.choices||[]);let e=t=>t.filter(r=>r.selected).map(r=>r.value);return $("MultiselectPrompt",i,{onAbort:e,onSubmit:e})};w.autocompleteMultiselect=i=>{i.choices=[].concat(i.choices||[]);let e=t=>t.filter(r=>r.selected).map(r=>r.value);return $("AutocompleteMultiselectPrompt",i,{onAbort:e,onSubmit:e})};var eu=(i,e)=>Promise.resolve(e.filter(t=>t.title.slice(0,i.length).toLowerCase()===i.toLowerCase()));w.autocomplete=i=>(i.suggest=i.suggest||eu,i.choices=[].concat(i.choices||[]),$("AutocompletePrompt",i))});var $n=u((qa,Tn)=>{"use strict";var Gt=Mn(),tu=["suggest","format","onState","validate","onRender","type"],In=()=>{};async function N(i=[],{onSubmit:e=In,onCancel:t=In}={}){let r={},s=N._override||{};i=[].concat(i);let n,o,h,l,a,K,g=async(v,b,J=!1)=>{if(!(!J&&v.validate&&v.validate(b)!==!0))return v.format?await v.format(b,r):b};for(o of i)if({name:l,type:a}=o,typeof a=="function"&&(a=await a(n,{...r},o),o.type=a),!!a){for(let v in o){if(tu.includes(v))continue;let b=o[v];o[v]=typeof b=="function"?await b(n,{...r},K):b}if(K=o,typeof o.message!="string")throw new Error("prompt message is required");if({name:l,type:a}=o,Gt[a]===void 0)throw new Error(`prompt type (${a}) is not defined`);if(s[o.name]!==void 0&&(n=await g(o,s[o.name]),n!==void 0)){r[l]=n;continue}try{n=N._injected?iu(N._injected,o.initial):await Gt[a](o),r[l]=n=await g(o,n,!0),h=await e(o,n,r)}catch{h=!await t(o,r)}if(h)return r}return r}function iu(i,e){let t=i.shift();if(t instanceof Error)throw t;return t===void 0?e:t}function ru(i){N._injected=(N._injected||[]).concat(i)}function su(i){N._override=Object.assign({},i)}Tn.exports=Object.assign(N,{prompt:N,prompts:Gt,inject:ru,override:su})});var re=u((Oa,Cn)=>{function nu(i){i=(Array.isArray(i)?i:i.split(".")).map(Number);let e=0,t=process.versions.node.split(".").map(Number);for(;e<i.length;e++){if(t[e]>i[e])return!1;if(i[e]>t[e])return!0}return!1}Cn.exports=nu("8.6.0")?es():$n()});var Zt=q(require("path"));function m(i,e){console.error(`
|
|
98
|
-
\u274C ${i}`),e&&console.error(e),process.exit()}function G(i){console.log("");for(let e of i)console.log(e);console.log("")}var X=require("fs"),Qt=q(require("path"));function ei(i,e,t){let r=Qt.default.join(i,"package.json");(0,X.existsSync)(r)||m(`File not found: ${r}`,null);let s=JSON.parse((0,X.readFileSync)(r,"utf8"));s.name=e.name,e.version&&(s.version=e.version),e.productName&&(s.productName=e.productName),e.description&&(s.description=e.description),e.repository&&(s.repository=e.repository),e.author&&(s.author=e.author),t.main&&(s.main=t.main),t.scripts&&(s.scripts={...s.scripts,...t.scripts}),t.devDependencies&&(s.devDependencies={...s.devDependencies,...t.devDependencies}),t.dependencies&&(s.dependencies={...s.dependencies,...t.dependencies});try{(0,X.writeFileSync)(r,JSON.stringify(s,null,2))}catch(n){m("Error write package.json",n)}}var _n=q(re());function C(i){i.aborted&&m("Operation cancelled",null)}async function se(i,e){return(await(0,_n.default)({type:"toggle",name:"value",message:i,initial:e,active:"yes",inactive:"no",onState:C})).value}var ne=q(require("path"));var Dn=require("fs"),Bt=q(require("path"));function Ee(i,e,t){(0,Dn.copyFileSync)(Bt.default.join(e,i),Bt.default.join(t,i))}var U=require("fs"),zt=q(require("path"));function Z(i,e){let t=(0,U.readdirSync)(i);for(let r of t){let s=zt.default.join(i,r),n=zt.default.join(e,r);(0,U.statSync)(s).isDirectory()?((0,U.mkdirSync)(n,{recursive:!0}),Z(s,n)):(0,U.copyFileSync)(s,n)}}async function kn(i,e,t){Z(ne.default.join(i,"template","common"),e),t.includes("capacitor")&&Z(ne.default.join(i,"template","capacitor"),e),t.includes("electron")&&(Z(ne.default.join(i,"template","electron"),e),t.includes("builder")&&Z(ne.default.join(i,"template","electron-builder"),e),t.includes("forge")&&Z(ne.default.join(i,"template","electron-forge"),e)),Ee(".gitignore",i,e),Ee("LICENSE",i,e),Ee("README.md",i,e)}var Vn=require("child_process");var jn=require("child_process");function En(){let i=["npm"];try{(0,jn.execSync)("yarn --version",{stdio:"ignore"}),i.unshift("yarn")}catch(e){m("Detect package manager error",e)}return i}var An=q(re());async function Rn(i,e){let t=e.map(s=>({title:s,value:s.trim().toLowerCase()}));return(await(0,An.default)({type:"select",name:"value",message:i,choices:t,initial:0,onState:C})).value}async function Fn(i){try{process.chdir(i);let e=En(),t=e[0];e.length>1&&(t=await Rn("Package manager",e)),G([`\u{1F4E6} Using package manager: ${t}`,"\u{1F4E6} Installing dependencies..."]),(0,Vn.execSync)(`${t} install`,{stdio:"inherit"}),G(["\u2705 Dependencies installed"])}catch(e){m("Error executing next steps",e)}}var Ae=require("fs");var oe=require("fs");function Ln(i){try{return(0,oe.existsSync)(i)?(0,oe.statSync)(i).isDirectory()?(0,oe.readdirSync)(i).length===0:(m(`Path is not a directory: ${i}`,null),!1):!0}catch(e){return m("Error checking directory",e),!1}}async function Hn(i){Ln(i)||(await se(`Directory "${i}" already exists. Overwrite?`,!1)||m("Operation cancelled",null),(0,Ae.rmSync)(i,{recursive:!0,force:!0}));try{(0,Ae.mkdirSync)(i,{recursive:!0})}catch(e){m("Error executing next steps",e)}}var Yn=q(re());async function Nn(i,e,t=!1){let r=e.map(n=>({title:n,value:n.trim().toLowerCase(),selected:t}));return(await(0,Yn.default)({type:"multiselect",name:"value",message:i,choices:r,instructions:!1,onState:C})).value}async function Un(){let e=await Nn("Select extended project libraries?",["electron"," builder"," forge","capacitor","tauri"],!0),t={},r={},s={},n="";return e.includes("capacitor")&&(t["@capacitor/android"]="^7.4.4",t["@capacitor/cli"]="^7.4.4",t["@capacitor/core"]="^7.4.4"),e.includes("electron")&&(n="electron/main.ts",s["electron:dev"]="electron .",t["@electron-forge/cli"]="^7.10.2",t["@electron/fuses"]="^1.8.0",t["@types/electron-squirrel-startup"]="^1.0.2",t.electron="^39.2.2",r["electron-squirrel-startup"]="^1.0.1",e.includes("builder")&&(s["electron:build"]="electron-builder --config electron-builder.config.js",t["electron-builder"]="^26.0.12",t["electron-builder-squirrel-windows"]="^26.0.12"),e.includes("forge")&&(s["electron:make"]="electron-forge make",s["electron:start"]="electron-forge start",s["electron:package"]="electron-forge package",t["@electron-forge/cli"]="^7.10.2",t["@electron-forge/maker-deb"]="^7.10.2",t["@electron-forge/maker-dmg"]="^7.10.2",t["@electron-forge/maker-rpm"]="^7.10.2",t["@electron-forge/maker-squirrel"]="^7.10.2",t["@electron-forge/maker-zip"]="^7.10.2",t["@electron-forge/plugin-auto-unpack-natives"]="^7.10.2",t["@electron-forge/plugin-fuses"]="^7.10.2")),e.includes("tauri")&&(s["tauri:build"]="tauri build",s["tauri:dev"]="tauri dev",s["tauri:init"]="tauri init --force",t["@tauri-apps/cli"]="^2.9.5"),{devDependencies:t,dependencies:r,scripts:s,main:n,libraries:e}}var Jn={name:"ts-vite-project",productName:"TS Vite Project",description:"TypeScript Vite
|
|
98
|
+
\u274C ${i}`),e&&console.error(e),process.exit()}function G(i){console.log("");for(let e of i)console.log(e);console.log("")}var X=require("fs"),Qt=q(require("path"));function ei(i,e,t){let r=Qt.default.join(i,"package.json");(0,X.existsSync)(r)||m(`File not found: ${r}`,null);let s=JSON.parse((0,X.readFileSync)(r,"utf8"));s.name=e.name,e.version&&(s.version=e.version),e.productName&&(s.productName=e.productName),e.description&&(s.description=e.description),e.repository&&(s.repository=e.repository),e.author&&(s.author=e.author),t.main&&(s.main=t.main),t.scripts&&(s.scripts={...s.scripts,...t.scripts}),t.devDependencies&&(s.devDependencies={...s.devDependencies,...t.devDependencies}),t.dependencies&&(s.dependencies={...s.dependencies,...t.dependencies});try{(0,X.writeFileSync)(r,JSON.stringify(s,null,2))}catch(n){m("Error write package.json",n)}}var _n=q(re());function C(i){i.aborted&&m("Operation cancelled",null)}async function se(i,e){return(await(0,_n.default)({type:"toggle",name:"value",message:i,initial:e,active:"yes",inactive:"no",onState:C})).value}var ne=q(require("path"));var Dn=require("fs"),Bt=q(require("path"));function Ee(i,e,t){(0,Dn.copyFileSync)(Bt.default.join(e,i),Bt.default.join(t,i))}var U=require("fs"),zt=q(require("path"));function Z(i,e){let t=(0,U.readdirSync)(i);for(let r of t){let s=zt.default.join(i,r),n=zt.default.join(e,r);(0,U.statSync)(s).isDirectory()?((0,U.mkdirSync)(n,{recursive:!0}),Z(s,n)):(0,U.copyFileSync)(s,n)}}async function kn(i,e,t){Z(ne.default.join(i,"template","common"),e),t.includes("capacitor")&&Z(ne.default.join(i,"template","capacitor"),e),t.includes("electron")&&(Z(ne.default.join(i,"template","electron"),e),t.includes("builder")&&Z(ne.default.join(i,"template","electron-builder"),e),t.includes("forge")&&Z(ne.default.join(i,"template","electron-forge"),e)),Ee(".gitignore",i,e),Ee("LICENSE",i,e),Ee("README.md",i,e)}var Vn=require("child_process");var jn=require("child_process");function En(){let i=["npm"];try{(0,jn.execSync)("yarn --version",{stdio:"ignore"}),i.unshift("yarn")}catch(e){m("Detect package manager error",e)}return i}var An=q(re());async function Rn(i,e){let t=e.map(s=>({title:s,value:s.trim().toLowerCase()}));return(await(0,An.default)({type:"select",name:"value",message:i,choices:t,initial:0,onState:C})).value}async function Fn(i){try{process.chdir(i);let e=En(),t=e[0];e.length>1&&(t=await Rn("Package manager",e)),G([`\u{1F4E6} Using package manager: ${t}`,"\u{1F4E6} Installing dependencies..."]),(0,Vn.execSync)(`${t} install`,{stdio:"inherit"}),G(["\u2705 Dependencies installed"])}catch(e){m("Error executing next steps",e)}}var Ae=require("fs");var oe=require("fs");function Ln(i){try{return(0,oe.existsSync)(i)?(0,oe.statSync)(i).isDirectory()?(0,oe.readdirSync)(i).length===0:(m(`Path is not a directory: ${i}`,null),!1):!0}catch(e){return m("Error checking directory",e),!1}}async function Hn(i){Ln(i)||(await se(`Directory "${i}" already exists. Overwrite?`,!1)||m("Operation cancelled",null),(0,Ae.rmSync)(i,{recursive:!0,force:!0}));try{(0,Ae.mkdirSync)(i,{recursive:!0})}catch(e){m("Error executing next steps",e)}}var Yn=q(re());async function Nn(i,e,t=!1){let r=e.map(n=>({title:n,value:n.trim().toLowerCase(),selected:t}));return(await(0,Yn.default)({type:"multiselect",name:"value",message:i,choices:r,instructions:!1,onState:C})).value}async function Un(){let e=await Nn("Select extended project libraries?",["electron"," builder"," forge","capacitor","tauri"],!0),t={},r={},s={},n="";return e.includes("capacitor")&&(t["@capacitor/android"]="^7.4.4",t["@capacitor/cli"]="^7.4.4",t["@capacitor/core"]="^7.4.4"),e.includes("electron")&&(n="electron/main.ts",s["electron:dev"]="electron .",t["@electron-forge/cli"]="^7.10.2",t["@electron/fuses"]="^1.8.0",t["@types/electron-squirrel-startup"]="^1.0.2",t.electron="^39.2.2",r["electron-squirrel-startup"]="^1.0.1",e.includes("builder")&&(s["electron:build"]="electron-builder --config electron-builder.config.js",t["electron-builder"]="^26.0.12",t["electron-builder-squirrel-windows"]="^26.0.12"),e.includes("forge")&&(s["electron:make"]="electron-forge make",s["electron:start"]="electron-forge start",s["electron:package"]="electron-forge package",t["@electron-forge/cli"]="^7.10.2",t["@electron-forge/maker-deb"]="^7.10.2",t["@electron-forge/maker-dmg"]="^7.10.2",t["@electron-forge/maker-rpm"]="^7.10.2",t["@electron-forge/maker-squirrel"]="^7.10.2",t["@electron-forge/maker-zip"]="^7.10.2",t["@electron-forge/plugin-auto-unpack-natives"]="^7.10.2",t["@electron-forge/plugin-fuses"]="^7.10.2")),e.includes("tauri")&&(s["tauri:build"]="tauri build",s["tauri:dev"]="tauri dev",s["tauri:init"]="tauri init --force",t["@tauri-apps/cli"]="^2.9.5"),{devDependencies:t,dependencies:r,scripts:s,main:n,libraries:e}}var Jn={name:"ts-vite-project",productName:"TS Vite Project",description:"TypeScript Vite Application",version:"0.1.0",author:"",repository:"",homepage:""};var Gn=q(re());async function Bn(i,e=""){return(await(0,Gn.default)({type:"list",name:"value",message:i,initial:e,separator:".",onState:C})).value||""}var zn=q(re());async function W(i,e="",t=!1){return(await(0,zn.default)({type:"text",name:"value",message:i,initial:e,validate:n=>!!(!t||t&&n.trim()),onState:C})).value||""}async function Zn(i){let{name:e,productName:t,description:r,version:s,author:n,repository:o,bugs:h,homepage:l}=Jn;if(i.length?(t=i.map(g=>`${g.slice(0,1).toUpperCase()}${g.slice(1)}`).join(" "),e=i.map(g=>g.toLowerCase()).join("-")):(t=(await W("Product name (required)",t,!0)).trim(),e=t.split(" ").map(g=>g.toLowerCase()).join("-"),e=(await W("Project (required)",e,!0)).trim()),await se("Config extended project params?",!0)){r=(await W("Description (required)",r,!0)).trim();let g=await Bn("Version",s);for(let J=g.length;J<3;J++)g.push("0");s=g.join("."),n={},n.name=(await W("Author (required)","",!0)).trim(),n.email=(await W("Email (required)","",!0)).trim(),o={};let v=`https://github.com/${n.name}/${e}.git`,b=(await W("Repository url",v)).trim();b&&(o.url=`git+${b}`,h={},n.email&&(h.email=n.email),h.url=`${b}/issues`,l=`${b}#readme`)}return{name:e,productName:t,description:r,version:s,author:n,repository:o,bugs:h,homepage:l}}async function ou(){G(["\u{1F680} Creating TypeScript + Vite Project","(will be installed in project name folder)","","\u26A0\uFE0F keys:","arrows - select","[enter] - confirm","[esc] - abort and exit","[space] - switch or clear","[tab] - edit default value"]);try{let i=process.argv.slice(2),e=await Zn(i),t=await Un(),r=Zt.default.resolve(e.name),s=Zt.default.resolve(__dirname,"..");await Hn(r),await kn(s,r,t.libraries),ei(r,e,t),G(["\u2705 Project created successfully!"]),await se("Install dependencies?",!0)&&await Fn(r),G(["Next steps:",`\u{1F4C1} cd ${e.name}`,"\u{1F4E6} npm install","\u2B50 npm run dev","","Happy coding! \u{1F44B}"])}catch(i){m("Error creating project",i)}}ou().catch(console.error);
|
package/package.json
CHANGED
|
@@ -1,30 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-ts-vite-project",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"productName": "TS Vite Project Template Creator",
|
|
5
5
|
"description": "Template for projects based typescript, vite, vitest, eslint, prettier, electron, tauri",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"keywords": [
|
|
8
|
-
"typescript",
|
|
9
|
-
"electron",
|
|
10
|
-
"tauri",
|
|
11
|
-
"vite",
|
|
12
|
-
"desktop",
|
|
13
|
-
"windows",
|
|
14
|
-
"win32",
|
|
15
|
-
"mac",
|
|
16
|
-
"web",
|
|
17
|
-
"android",
|
|
18
|
-
"ios",
|
|
19
|
-
"create",
|
|
20
|
-
"template",
|
|
21
|
-
"easy",
|
|
22
|
-
"lint",
|
|
23
|
-
"test",
|
|
24
|
-
"testing",
|
|
25
|
-
"eslint",
|
|
26
|
-
"prettier",
|
|
27
|
-
"vitest"
|
|
8
|
+
"typescript", "electron", "tauri", "vite", "desktop", "windows", "win32", "mac", "web", "android", "ios", "create", "template", "easy", "lint", "test", "testing", "eslint", "prettier", "vitest"
|
|
28
9
|
],
|
|
29
10
|
"author": {
|
|
30
11
|
"name": "Maxim Nikonov",
|