create-farm-plugin
Version:
use create-farm-plugin to create farm plugin
4 lines ⢠8.61 kB
JavaScript
import "./__farm_runtime.js";import "./index_e875.0899bce5.js";import "./index_eed4.91ad9642.js";import * as __farm_external_module_node_fs from "node:fs";import * as __farm_external_module_node_module from "node:module";import * as __farm_external_module_node_path from "node:path";import * as __farm_external_module_node_url from "node:url";global['28d997dabae4ce50ab48ae4ea4490780'].__farm_module_system__.setExternalModules({"node:fs": __farm_external_module_node_fs && __farm_external_module_node_fs.default && !__farm_external_module_node_fs.__esModule ? {...__farm_external_module_node_fs,__esModule:true} : {...__farm_external_module_node_fs},"node:module": __farm_external_module_node_module && __farm_external_module_node_module.default && !__farm_external_module_node_module.__esModule ? {...__farm_external_module_node_module,__esModule:true} : {...__farm_external_module_node_module},"node:path": __farm_external_module_node_path && __farm_external_module_node_path.default && !__farm_external_module_node_path.__esModule ? {...__farm_external_module_node_path,__esModule:true} : {...__farm_external_module_node_path},"node:url": __farm_external_module_node_url && __farm_external_module_node_url.default && !__farm_external_module_node_url.__esModule ? {...__farm_external_module_node_url,__esModule:true} : {...__farm_external_module_node_url}});(function(_){var filename = ((function(){return import.meta.url})());for(var r in _){_[r].__farm_resource_pot__=filename;global['28d997dabae4ce50ab48ae4ea4490780'].__farm_module_system__.register(r,_[r])}})({"b5d64806":function e(e,n,l,r){e._m(n);var t=e.i(l("node:fs")),o=e.i(l("node:path")),i=e.i(l("9c0d0922")),a=e.i(l("fd07bf8c")),c=l("node:url"),s=l("ccfc2d75");(function(){let e=process.versions.node;16>parseInt(e.split(".")[0],10)&&(console.log(s.colors.yellow(`create-farm-plugin unsupported Node.js v${e}.`)),console.log(s.colors.yellow("Please use Node.js v16 or higher.")),process.exit(1));})(),console.log(s.colors.BrandText("ā” Welcome To Farm ! "));let p=e.f(i)(process.argv.slice(2),{string:["_"]}),u=process.cwd();function g(e){return e?.trim().replace(/\/+$/g,"");}async function f(n,l){let r=e.f(o).join(u,n),i=e.f(o).join(c.fileURLToPath(import.meta.url),`../../templates/${l.type}`);!function n(l,r,i){if(e.f(t).statSync(l).isDirectory())!function(l,r,i){for(let a of(e.f(t).mkdirSync(r,{recursive:!0}),e.f(t).readdirSync(l))){let c=e.f(o).resolve(l,a),s=e.f(o).resolve(r,a);"gitignore"===a?(n(c,s,i),e.f(t).renameSync(s,e.f(o).resolve(r,".gitignore"))):n(c,s,i);}}(l,r,i);else{e.f(t).copyFileSync(l,r);let n=e.f(t).readFileSync(r,"binary");e.f(t).writeFileSync(r,function(e,n){for(let l of[{name:"<FARM-JS-PLUGIN-NPM-NAME>",replace:()=>n.pluginName},{name:"<FARM-RUST-PLUGIN-NPM-NAME>",replace:()=>n.pluginName},{name:"<FARM-RUST-PLUGIN-CARGO-NAME>",replace:()=>n.pluginName.replace(/@/g,"").replace(/[^a-zA-Z0-9_]/g,"_")},{name:"<FARM-RUST-PLUGIN-STRUCT-NAME>",replace:()=>n.pluginName.replace(/@/g,"").replace(/[^a-zA-Z0-9_]/g,"_").replace(/_([a-z])/g,e=>e[1].toUpperCase()).replace(/^[a-z]/,e=>e.toUpperCase())}])e.includes(l.name)&&(e=e.replaceAll(l.name,l.replace()));return e;}(n,i),"binary");}}(i,r,l);let a=e.f(o).join(i,".gitignore");e.f(t).existsSync(a)&&e.f(t).copyFileSync(a,e.f(o).join(r,".gitignore"));let p=e.f(o).join(`${r}/playground`,"package.json");if(e.f(t).existsSync(p)){let n=JSON.parse(e.f(t).readFileSync(p,"utf-8"));n.dependencies[l.pluginName]="workspace:*",e.f(t).writeFileSync(p,JSON.stringify(n,null,2));}let g="js"===l.type?"pnpm dev":"pnpm build";console.log(s.colors.green("\nš Plugin created successfully!\n")),console.log(s.colors.cyan(`cd ${n} && pnpm install && ${g}
`));}(async function n(){let n=g(p._[0]),l=p.type||p.t,r=n,o={},i=n||"farm-plugin-xxx";try{o=await e.f(a)([{type:l?null:"select",name:"type",message:"Select Plugin Type:",choices:[{title:s.colors.cyan("JS Plugin"),value:"js"},{title:s.colors.green("Rust Plugin"),value:"rust"}],onState:e=>{"js"===e.value&&(i="farm-js-plugin-xxx");}},{type:n?null:"text",name:"pluginName",message:"Plugin Name:",initial:()=>i,validate:e=>0!==e.trim().length||"Plugin name cannot be empty",onState:e=>{r=g(e.value)||i;}},{type:()=>!e.f(t).existsSync(r)||function(n){let l=e.f(t).readdirSync(n);return 0===l.length||1===l.length&&".git"===l[0];}(r)?null:"confirm",name:"overwrite",message:()=>("."===r?"šØ Current directory":`šØ Target directory "${r}"`)+" is not empty. Overwrite existing files and continue?"},{type:(e,{overwrite:n})=>{if(!1===n)throw Error(s.colors.red("ā")+" Operation cancelled");return null;},name:"overwriteChecker"}],{onCancel:()=>{throw Error(s.colors.red("ā")+" Operation cancelled");}});}catch(e){console.log(e.message);return;}let{type:c=l,pluginName:u=n}=o;await f(r,{type:c,pluginName:u});})();},"ccfc2d75":function n(n,b,r,o){n._m(b),n.o(b,"reset",()=>d),n.o(b,"bold",()=>s),n.o(b,"dim",()=>c),n.o(b,"italic",()=>h),n.o(b,"underline",()=>f),n.o(b,"inverse",()=>p),n.o(b,"hidden",()=>C),n.o(b,"strikethrough",()=>O),n.o(b,"debugColor",()=>R),n.o(b,"brandColor",()=>M),n.o(b,"black",()=>$),n.o(b,"red",()=>v),n.o(b,"green",()=>y),n.o(b,"yellow",()=>B),n.o(b,"blue",()=>E),n.o(b,"magenta",()=>w),n.o(b,"purple",()=>L),n.o(b,"orange",()=>T),n.o(b,"cyan",()=>k),n.o(b,"white",()=>_),n.o(b,"bgBlack",()=>q),n.o(b,"bgRed",()=>F),n.o(b,"bgGreen",()=>G),n.o(b,"bgYellow",()=>I),n.o(b,"bgBlue",()=>N),n.o(b,"bgMagenta",()=>P),n.o(b,"bgCyan",()=>U),n.o(b,"bgWhite",()=>W),n.o(b,"gradientString",()=>X),n.o(b,"interpolateColor",()=>Y),n.o(b,"PersistentCacheBrand",()=>j),n.o(b,"handleBrandText",()=>z),n.o(b,"BrandText",()=>A),n.o(b,"colors",()=>D);let t=r("node:module").createRequire(import.meta.url),m=[176,106,179],e=[198,66,110],x=[255,182,193],i=[128,0,128],g=process.argv||[],l=process.env,a=!("NO_COLOR"in l||g.includes("--no-color"))&&("FORCE_COLOR"in l||g.includes("--color")||"win32"===process.platform||null!=t&&global.nodeRequire("tty").isatty(1)&&"dumb"!==l.TERM||"CI"in l),S=(n,b,r=n)=>o=>{let t=""+o,m=t.indexOf(b,n.length);return~m?n+u(t,b,r,m)+b:n+t+b;},u=(n,b,r,o)=>{let t=n.substring(0,o)+r,m=n.substring(o+b.length),e=m.indexOf(b);return~e?t+u(m,b,r,e):t+m;};var d=a?n=>`\x1b[0m${n}\x1b[0m`:String,s=a?S("\x1b[1m","\x1b[22m","\x1b[22m\x1b[1m"):String,c=a?S("\x1b[2m","\x1b[22m","\x1b[22m\x1b[2m"):String,h=a?S("\x1b[3m","\x1b[23m"):String,f=a?S("\x1b[4m","\x1b[24m"):String,p=a?S("\x1b[7m","\x1b[27m"):String,C=a?S("\x1b[8m","\x1b[28m"):String,O=a?S("\x1b[9m","\x1b[29m"):String,R=S("\x1b[38;2;255;140;0m","\x1b[39m"),M=a?S("\x1b[38;2;113;26;95m","\x1b[39m"):String,$=a?S("\x1b[38;2;0;0;0m","\x1b[39m"):String,v=a?S("\x1b[38;2;219;90;107m","\x1b[39m"):String,y=a?S("\x1b[32m","\x1b[39m"):String,B=a?S("\x1b[33m","\x1b[39m"):String,E=a?S("\x1b[38;2;68;206;246m","\x1b[39m"):String,w=a?S("\x1b[38;2;180;0;100m","\x1b[39m"):String,L=a?S("\x1b[38;2;140;67;86m","\x1b[39m"):String,T=a?S("\x1b[38;2;255;137;54m","\x1b[39m"):String,k=a?S("\x1b[36m","\x1b[39m"):String,_=a?S("\x1b[37m","\x1b[39m"):String,q=a?S("\x1b[40m","\x1b[49m"):String,F=a?S("\x1b[41m","\x1b[49m"):String,G=a?S("\x1b[42m","\x1b[49m"):String,I=a?S("\x1b[43m","\x1b[49m"):String,N=a?S("\x1b[44m","\x1b[49m"):String,P=a?S("\x1b[45m","\x1b[49m"):String,U=a?S("\x1b[46m","\x1b[49m"):String,W=a?S("\x1b[47m","\x1b[49m"):String;function X(n,b){let r=n.length,o=b.map(n=>`\x1b[38;2;${n[0]};${n[1]};${n[2]}m`),t="";for(let m=0;m<r;m++){let e=Math.floor(m/r*(b.length-1));t+=`${o[e]}${n[m]}`;}return t+"\x1b[0m";}function Y(n,b,r){return[Math.round(n[0]+(b[0]-n[0])*r),Math.round(n[1]+(b[1]-n[1])*r),Math.round(n[2]+(b[2]-n[2])*r)];}var j=M("ā”ļø")+X("FULL EXTREME!",[m,Y(m,e,.1),Y(m,e,.2),Y(m,e,.3),Y(m,e,.4),Y(m,e,.5),Y(m,e,.6),Y(m,e,.7),Y(m,e,.8),Y(m,e,.9),e]);function z(n){console.log(X(n,[x,Y(x,i,.2),Y(x,i,.4),Y(x,i,.6),Y(x,i,.8),i]));}var A=n=>X(`
${n}
`,[x,Y(x,i,.2),Y(x,i,.4),Y(x,i,.6),Y(x,i,.8),i]),D={reset:d,bold:s,dim:c,italic:h,underline:f,inverse:p,hidden:C,strikethrough:O,black:$,red:v,green:y,yellow:B,blue:E,magenta:w,purple:L,orange:T,cyan:k,white:_,bgBlack:q,bgRed:F,bgGreen:G,bgYellow:I,bgBlue:N,bgMagenta:P,bgCyan:U,bgWhite:W,debugColor:R,brandColor:M,handleBrandText:z,BrandText:A};},});global['28d997dabae4ce50ab48ae4ea4490780'].__farm_module_system__.setInitialLoadedResources(['index_e875.0899bce5.js','index_eed4.91ad9642.js']);global['28d997dabae4ce50ab48ae4ea4490780'].__farm_module_system__.setDynamicModuleResourcesMap([],{ });var farmModuleSystem = global['28d997dabae4ce50ab48ae4ea4490780'].__farm_module_system__;farmModuleSystem.bootstrap();var entry = farmModuleSystem.require("b5d64806");