eser 4.1.7 → 4.1.8

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.
Files changed (2) hide show
  1. package/eser.js +2 -2
  2. package/package.json +1 -1
package/eser.js CHANGED
@@ -194,7 +194,7 @@ ${n.join(`
194
194
  `)}
195
195
  </table>
196
196
  ${Ng}`},NN=(e,t)=>{let n=e.indexOf(cw),r=e.indexOf(Ng);if(n===-1||r===-1)throw new Error(`Could not find contributor markers in README. Add '${cw}' and '${Ng}' markers to the file.`);let o=e.slice(0,n),i=e.slice(r+Ng.length),s=`${o}${t}${i}`;return{content:s,changed:s!==e}},BN=async(e={})=>{let{readmePath:t="README.md",columnsPerRow:n=8,commit:r=!1}=e,o=rs(t),i=await DN(),s=await _N(i.owner,i.name),u=LN(s,n),p=await ue.current.fs.readTextFile(o),{content:f,changed:g}=NN(p,u),y=!1;return g&&(await ue.current.fs.writeTextFile(o,f),r&&(await tr.exec`git add ${o}`.spawn(),await tr.exec`git -c user.name=${"github-actions[bot]"} -c user.email=${"github-actions[bot]@users.noreply.github.com"} commit -m ${"docs: update contributors list"}`.spawn(),await tr.exec`git push`.spawn(),y=!0)),{contributorCount:s.length,readmePath:o,updated:g,committed:y}},UN=e=>qt.fromPromise(()=>BN(e)),vJ=e=>{let t=e.flags.columns,n=t!==void 0?Number(t):void 0;return K.ok({readmePath:e.flags.readme??void 0,columnsPerRow:n,commit:e.flags.commit===!0})},bJ=e=>{if(K.isFail(e)){let n=e.error,r=n instanceof Error?n.message:n.message??String(n);return lw.printError(r),K.fail({exitCode:1})}let{value:t}=e;return t.updated?t.committed?lw.printSuccess(`Updated ${t.contributorCount} contributors and committed changes.`):lw.printSuccess(`Updated ${t.contributorCount} contributors in ${t.readmePath}.`):lw.printInfo(`No changes \u2014 ${t.contributorCount} contributors already up to date.`),K.ok(void 0)},zN=Xt.createTrigger({handler:UN,adaptInput:vJ,adaptOutput:bJ}),wJ=async e=>{let t=gt(e??[],{string:["columns","readme"],boolean:["commit"],alias:{h:"help"}});if(t.help)return console.log(`eser codebase gh contributors \u2014 Update contributor list
197
- `),console.log("Options:"),console.log(" --columns <n> Number of columns per row (default: 8)"),console.log(" --readme <path> Path to README.md (default: README.md)"),console.log(" --commit Auto-commit and push changes"),console.log(" --help, -h Show this help"),K.ok(void 0);let n=Io("gh-contributors",t);return await zN(n)}});var QN={};ye(QN,{handleCli:()=>ZN,hasGitHubRelease:()=>XN,main:()=>kJ,normalizeTag:()=>GN,parseChangelog:()=>YN,parseChangelogText:()=>VN,syncReleaseNotes:()=>JN,syncReleaseNotesHandler:()=>KN});var uw,CJ,GN,VN,YN,XN,JN,KN,RJ,TJ,ZN,kJ,jN=k(async()=>{"use strict";ti();rg();oi();$t();ha();Ei();Si();uw=Mt.createOutput(),CJ=/^##\s+\[?([^\]\s]+)\]?\s*-?\s*([0-9]{4}-[0-9]{2}-[0-9]{2})?\s*$/,GN=e=>{let t=e.trim().replace(/^refs\/tags\//,"");return t.startsWith("v")?t:`v${t}`},VN=e=>{let t=e.split(/\r?\n/),n=[];for(let r=0;r<t.length;r+=1){let i=t[r].match(CJ);i!==null&&n.push({version:i[1],date:i[2]??"",headingLineIndex:r})}return n.length===0?[]:n.map((r,o)=>{let i=n[o+1],s=r.headingLineIndex+1,u=i!==void 0?i.headingLineIndex:t.length,p=t.slice(s,u);for(;p.length>0&&p[0].trim()==="";)p.shift();for(;p.length>0&&p[p.length-1].trim()==="";)p.pop();let f=[`## ${r.version}${r.date!==""?` - ${r.date}`:""}`];return p.length>0&&f.push("",...p),{version:r.version,date:r.date,tag:`v${r.version}`,notes:`${f.join(`
197
+ `),console.log("Options:"),console.log(" --columns <n> Number of columns per row (default: 8)"),console.log(" --readme <path> Path to README.md (default: README.md)"),console.log(" --commit Auto-commit and push changes"),console.log(" --help, -h Show this help"),K.ok(void 0);let n=Io("gh-contributors",t);return await zN(n)}});var QN={};ye(QN,{handleCli:()=>ZN,hasGitHubRelease:()=>XN,main:()=>kJ,normalizeTag:()=>GN,parseChangelog:()=>YN,parseChangelogText:()=>VN,syncReleaseNotes:()=>JN,syncReleaseNotesHandler:()=>KN});var uw,CJ,GN,VN,YN,XN,JN,KN,RJ,TJ,ZN,kJ,jN=k(async()=>{"use strict";ti();rg();oi();$t();ha();Ei();Si();uw=Mt.createOutput(),CJ=/^##\s+\[?([^\]\s]+)\]?\s*-?\s*([0-9]{4}-[0-9]{2}-[0-9]{2})?\s*$/,GN=e=>{let t=e.trim().replace(/^refs\/tags\//,"");return t.startsWith("v")?t:`v${t}`},VN=e=>{let t=e.split(/\r?\n/),n=[];for(let r=0;r<t.length;r+=1){let i=t[r].match(CJ);i!==null&&/^\d/.test(i[1])&&n.push({version:i[1],date:i[2]??"",headingLineIndex:r})}return n.length===0?[]:n.map((r,o)=>{let i=n[o+1],s=r.headingLineIndex+1,u=i!==void 0?i.headingLineIndex:t.length,p=t.slice(s,u);for(;p.length>0&&p[0].trim()==="";)p.shift();for(;p.length>0&&p[p.length-1].trim()==="";)p.pop();let f=[`## ${r.version}${r.date!==""?` - ${r.date}`:""}`];return p.length>0&&f.push("",...p),{version:r.version,date:r.date,tag:`v${r.version}`,notes:`${f.join(`
198
198
  `).trim()}
199
199
  `}})},YN=async(e={})=>{let{changelogPath:t="CHANGELOG.md",root:n="."}=e,r=rs(n,t),o=await ue.current.fs.readTextFile(r);return{entries:VN(o)}},XN=async(e,t)=>{try{return await tr.exec`gh release view ${e} --repo ${t}`.quiet().text(),!0}catch{return!1}},JN=async e=>{let{repo:t,createIfMissing:n=!1,changelogPath:r="CHANGELOG.md",root:o=".",releaseTitle:i="eserstack {tag}"}=e,{entries:s}=await YN({changelogPath:r,root:o});if(s.length===0)throw new Error("No release headings found in CHANGELOG.md.");let u=e.tag!==void 0?GN(e.tag):s[0].tag,p=s.find(y=>y.tag===u);if(p===void 0)throw new Error(`No matching changelog section found for ${u}.`);let f=await ue.current.fs.makeTempDir({prefix:"eserstack-release-"}),g=ns(f,`${u}-notes.md`);await ue.current.fs.writeTextFile(g,p.notes);try{if(await XN(u,t))return await tr.exec`gh release edit ${u} --repo ${t} --notes-file ${g}`.spawn(),{tag:u,entry:p,action:"updated"};if(!n)return{tag:u,entry:p,action:"skipped"};let x=i.replace("{tag}",u);try{return await tr.exec`gh release create ${u} --repo ${t} --title ${x} --notes-file ${g}`.spawn(),{tag:u,entry:p,action:"created"}}catch{return await tr.exec`gh release edit ${u} --repo ${t} --notes-file ${g}`.spawn(),{tag:u,entry:p,action:"updated"}}}finally{await ue.current.fs.remove(f,{recursive:!0})}},KN=e=>qt.fromPromise(()=>JN(e)),RJ=e=>{let t=e.flags.repo??ue.current.env.get("GITHUB_REPOSITORY")??"";return t===""?K.fail(Xt.adaptError("Missing repository. Pass --repo or set GITHUB_REPOSITORY.")):K.ok({repo:t,tag:e.flags.tag??void 0,createIfMissing:e.flags["create-if-missing"]===!0})},TJ=e=>{if(K.isFail(e)){let n=e.error,r=n instanceof Error?n.message:n.message??String(n);return uw.printError(r),K.fail({exitCode:1})}let{value:t}=e;switch(t.action){case"created":uw.printSuccess(`Created release ${t.tag} with changelog notes.`);break;case"updated":uw.printSuccess(`Updated release notes for ${t.tag}.`);break;case"skipped":uw.printWarning(`Release ${t.tag} not found. Skipping (pass --create-if-missing to create).`);break}return K.ok(void 0)},ZN=Xt.createTrigger({handler:KN,adaptInput:RJ,adaptOutput:TJ}),kJ=async e=>{let t=gt(e??[],{string:["repo","tag"],boolean:["create-if-missing"],alias:{h:"help"}}),n=Io("release-notes",t);return await ZN(n)}});var qN,EJ,$N,eB,tB,nB,PS=k(()=>{"use strict";fa();qN="#%$".repeat(35),EJ=e=>{let t=e.split(qN).map(n=>{let r=n.slice(0,40);n=n.slice(40);let o=n.indexOf(`
200
200
  `);if(o<0)return{hash:r,subject:n.trim(),body:""};let i=n.slice(0,o).trim(),s=n.slice(o+1).trim();return{hash:r,subject:i,body:s}});return t.shift(),t},$N=async()=>await Ut`git describe --tags --abbrev=0`.text(),eB=async(e,t)=>{let n=`--pretty=format:${qN}%H%B`,r=`${e}..${t}`,o=await Ut`git --no-pager log ${n} ${r}`.text();return EJ(o)},tB=async(e,t)=>{await Ut`git tag -a ${e} -m ${t}`.spawn()},nB=async(e,t)=>{await Ut`git push ${e} ${t}`.spawn()}});var AS={};ye(AS,{handleCli:()=>sB,main:()=>MJ,readVersionFile:()=>Xa,showVersions:()=>rB,versions:()=>oB,versionsHandler:()=>iB});var Xd,Xa,PJ,AJ,rB,oB,iB,FJ,OJ,sB,MJ,th=k(async()=>{ti();rg();oE();oi();$t();ha();Ei();Si();Mf();Xd=Mt.createOutput(),Xa=async(e={})=>{let{root:t="."}=e,n=ns(t,"VERSION");try{return(await ue.current.fs.readTextFile(n)).trim()}catch{return}},PJ=async(e,t)=>{let n=ns(e,"VERSION");await ue.current.fs.writeTextFile(n,t+`
@@ -830,7 +830,7 @@ Supported shells: bash, zsh, fish`,exitCode:1});n=t}else n=Gc();let o=e.root.com
830
830
  `);let n=new Map;for(let[r,o]of Object.entries(t.modules)){let i=o.category??"Modules",s=n.get(i)??[];s.push([r,o]),n.set(i,s)}for(let[r,o]of n){console.log(`${r}:`);for(let[i,s]of o)console.log(` ${i.padEnd(24)} ${s.description}`);console.log()}if(t.aliases!==void 0&&Object.keys(t.aliases).length>0){console.log(`
831
831
  Aliases:`);for(let[r,o]of Object.entries(t.aliases))console.log(` ${r.padEnd(24)} \u2192 ${o}`)}console.log(`
832
832
  Run 'eser ${e} <module> --help' for module-specific help.`)},BB=async(e,t,n)=>{let r=nh[e];if(r===void 0)return Me({message:`Unknown package: ${e}`,exitCode:1});let o=r.aliases?.[t]??t,i=r.modules[o];return i===void 0?(console.error(`Unknown module: ${e} ${t}
833
- `),MS(e),Me({exitCode:1})):await(await i.load()).main(n)};fa();Xn();Qr();xe();var mw=(e,t)=>typeof t=="string"?{command:t,description:e,workingDirectory:void 0,depends:[]}:{command:t.command,description:t.description??e,workingDirectory:t.workingDirectory,depends:t.depends??[]},zB=(e,t,n=new Set,r=new Set)=>{if(r.has(e))return[];if(n.has(e))throw new Error(`Circular dependency detected: ${e} depends on itself (cycle in dependency chain)`);let o=t[e];if(o===void 0)throw new Error(`Unknown script dependency: "${e}"`);n.add(e);let i=mw(e,o),s=[];for(let u of i.depends){let p=zB(u,t,n,r);for(let f of p)r.has(f)||(s.push(f),r.add(f))}return r.add(e),s},rK=()=>{let e=new URL("./main.ts",import.meta.url),t=e.protocol==="file:"?e.pathname:e.href;return`${R.process.execPath()} run --allow-all ${t}`},oK=e=>{if(e==="eser"||e.startsWith("eser ")){let t=e.slice(4);return`${rK()}${t}`}return e},UB=async(e,t,n)=>{let r=oK(e),o=n!==void 0&&n.length>0?`${r} ${n.join(" ")}`:r,i=t??".";return(await new tc("sh",["-c",o]).cwd(i).stdout("inherit").stderr("inherit").noThrow().spawn()).code},WB=async(e,t,n,r)=>{let o=zB(e,n);for(let u of o){let p=mw(u,n[u]);console.log(Ye(`$ ${u}`));let f=await UB(p.command,p.workingDirectory);if(f!==0)return console.error(Ot(`Script dependency "${u}" failed with exit code ${f}`)),Me({exitCode:f})}let i=mw(e,n[e]);console.log(Ye(`$ ${e}`));let s=await UB(i.command,i.workingDirectory,r);return s!==0?Me({exitCode:s}):Ee(void 0)},HB=e=>{console.log("Scripts:");for(let[t,n]of Object.entries(e)){let r=mw(t,n);console.log(` ${t.padEnd(20)} ${Ye(r.description)}`)}console.log()};var IS={name:"@eser/cli",version:"4.1.7",type:"module",exports:"./main.ts",bin:{eser:"./bin.ts"},dependencies:{"@eser/codebase":"workspace:*","@eser/functions":"workspace:*","@eser/laroux-bundler":"workspace:*","@eser/laroux-server":"workspace:*","@eser/logging":"workspace:*","@eser/shell":"workspace:*","@eser/standards":"workspace:*","@std/cli":"npm:@jsr/std__cli@^1.0.25","@std/fmt":"npm:@jsr/std__fmt@^1.0.8"},devDependencies:{esbuild:"^0.27.3"}};var A9=e=>async(t,n)=>await e.parse(t),F9=(e,t)=>async(n,r)=>await e({args:[],flags:r,root:{name:"eser",completions:()=>"",help:()=>""},commandPath:["eser",t]}),O9={laroux:async()=>{let{larouxCommand:e}=await Promise.resolve().then(()=>(f9(),p9));return A9(e)},system:async()=>{let{systemCommand:e}=await Promise.resolve().then(()=>(P9(),S9));return A9(e)},install:async()=>{let{installHandler:e}=await Promise.resolve().then(()=>(X0(),z1));return F9(e,"install")},update:async()=>{let{updateHandler:e}=await Promise.resolve().then(()=>(X0(),z1));return F9(e,"update")},version:()=>{let e=(t,n)=>(n.bare===!0?console.log(IS.version):console.log(`eser ${IS.version}`),Promise.resolve(Ee(void 0)));return Promise.resolve(e)}},M9=async()=>{console.log(`eser - Eser Ozvataf's command-line tooling to access things
833
+ `),MS(e),Me({exitCode:1})):await(await i.load()).main(n)};fa();Xn();Qr();xe();var mw=(e,t)=>typeof t=="string"?{command:t,description:e,workingDirectory:void 0,depends:[]}:{command:t.command,description:t.description??e,workingDirectory:t.workingDirectory,depends:t.depends??[]},zB=(e,t,n=new Set,r=new Set)=>{if(r.has(e))return[];if(n.has(e))throw new Error(`Circular dependency detected: ${e} depends on itself (cycle in dependency chain)`);let o=t[e];if(o===void 0)throw new Error(`Unknown script dependency: "${e}"`);n.add(e);let i=mw(e,o),s=[];for(let u of i.depends){let p=zB(u,t,n,r);for(let f of p)r.has(f)||(s.push(f),r.add(f))}return r.add(e),s},rK=()=>{let e=new URL("./main.ts",import.meta.url),t=e.protocol==="file:"?e.pathname:e.href;return`${R.process.execPath()} run --allow-all ${t}`},oK=e=>{if(e==="eser"||e.startsWith("eser ")){let t=e.slice(4);return`${rK()}${t}`}return e},UB=async(e,t,n)=>{let r=oK(e),o=n!==void 0&&n.length>0?`${r} ${n.join(" ")}`:r,i=t??".";return(await new tc("sh",["-c",o]).cwd(i).stdout("inherit").stderr("inherit").noThrow().spawn()).code},WB=async(e,t,n,r)=>{let o=zB(e,n);for(let u of o){let p=mw(u,n[u]);console.log(Ye(`$ ${u}`));let f=await UB(p.command,p.workingDirectory);if(f!==0)return console.error(Ot(`Script dependency "${u}" failed with exit code ${f}`)),Me({exitCode:f})}let i=mw(e,n[e]);console.log(Ye(`$ ${e}`));let s=await UB(i.command,i.workingDirectory,r);return s!==0?Me({exitCode:s}):Ee(void 0)},HB=e=>{console.log("Scripts:");for(let[t,n]of Object.entries(e)){let r=mw(t,n);console.log(` ${t.padEnd(20)} ${Ye(r.description)}`)}console.log()};var IS={name:"@eser/cli",version:"4.1.8",type:"module",exports:"./main.ts",bin:{eser:"./bin.ts"},dependencies:{"@eser/codebase":"workspace:*","@eser/functions":"workspace:*","@eser/laroux-bundler":"workspace:*","@eser/laroux-server":"workspace:*","@eser/logging":"workspace:*","@eser/shell":"workspace:*","@eser/standards":"workspace:*","@std/cli":"npm:@jsr/std__cli@^1.0.25","@std/fmt":"npm:@jsr/std__fmt@^1.0.8"},devDependencies:{esbuild:"^0.27.3"}};var A9=e=>async(t,n)=>await e.parse(t),F9=(e,t)=>async(n,r)=>await e({args:[],flags:r,root:{name:"eser",completions:()=>"",help:()=>""},commandPath:["eser",t]}),O9={laroux:async()=>{let{larouxCommand:e}=await Promise.resolve().then(()=>(f9(),p9));return A9(e)},system:async()=>{let{systemCommand:e}=await Promise.resolve().then(()=>(P9(),S9));return A9(e)},install:async()=>{let{installHandler:e}=await Promise.resolve().then(()=>(X0(),z1));return F9(e,"install")},update:async()=>{let{updateHandler:e}=await Promise.resolve().then(()=>(X0(),z1));return F9(e,"update")},version:()=>{let e=(t,n)=>(n.bare===!0?console.log(IS.version):console.log(`eser ${IS.version}`),Promise.resolve(Ee(void 0)));return Promise.resolve(e)}},M9=async()=>{console.log(`eser - Eser Ozvataf's command-line tooling to access things
834
834
  `),console.log(`Usage: eser <command> [subcommand] [options]
835
835
  `),console.log("Commands:");for(let[n,r]of Object.entries(nh))console.log(` ${n.padEnd(14)} ${r.description}`);console.log(" laroux laroux.js framework commands (init, dev, build, serve)"),console.log(" system Commands related with this CLI"),console.log(" install Install eser CLI globally (alias for system install)"),console.log(" update Update eser CLI to latest version (alias for system update)"),console.log(" version Show version number");let t=(await ec("."))?.scripts;t!=null&&typeof t=="object"&&(console.log(),HB(t)),console.log(`
836
836
  Options:`),console.log(" -h, --help Show this help message"),console.log(`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eser",
3
- "version": "4.1.7",
3
+ "version": "4.1.8",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "eser": "./eser.js"