@kitschpatrol/shared-config 3.0.2 → 3.0.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.
Files changed (2) hide show
  1. package/bin/cli.js +3 -3
  2. package/package.json +10 -8
package/bin/cli.js CHANGED
@@ -44,8 +44,8 @@ ${s}`,i=`${s||""}${i}
44
44
  --print-config, -p <path> Print the effective configuration at a certain path.`;break}case"help":break;case"version":break;default:console.error(`Unknown command name in generateHelpText: ${n}`)}return r+=`
45
45
  --help, -h Print this help info.`,r+=`
46
46
  --version, -v Print the package version.
47
- `,r}function _p(e){return Object.keys(e).reduce((t,r)=>{let n={};switch(r){case"init":{n={shortFlag:"i",type:"boolean"};break}case"check":{n={aliases:["lint",""],shortFlag:"l",type:"boolean"};break}case"fix":{n={shortFlag:"f",type:"boolean"};break}case"printConfig":{n={shortFlag:"p",type:"boolean"};break}case"help":{n={shortFlag:"h",type:"boolean"};break}case"version":{n={shortFlag:"v",type:"boolean"};break}default:console.error(`Unknown command name: ${r}`)}return t[r]=n,t},{})}async function ut(e,t,r=[]){if(t.command!==void 0&&typeof t.command=="string"){let n;try{let i=Op(t.command,[...t.options??[],...r],{env:{FORCE_COLOR:"true"},stdin:"inherit"});i.stdout?.pipe(e,{end:!1}),i.stderr?.pipe(e,{end:!1}),await i,n=i.exitCode??1}catch(i){n=typeof i.exitCode=="number"?i.exitCode:1}return n}return e.write(`Error: Invalid optionCommand: ${JSON.stringify(t,void 0,2)}`),1}function as(e,t,r){e.length===0&&!t.defaultArguments&&(r.write(`Error: This command must be used with a file argument
48
- `),process.exit(1))}async function ls(e,t,r,n){let i=is({allowUnknownFlags:!1,booleanDefault:void 0,flags:_p(n),help:Ip(e,n),importMeta:import.meta}),{flags:s,input:o}=i,a=Object.keys(n).reduce((p,d)=>(s[d]&&(p[d]=n[d]),p),{}),l=xp(t,r);l.pipe(process.stdout),Object.keys(a).length===0&&(n.check===void 0?l.write(`No default check behavior implemented. Run ${e} --help for valid commands.
47
+ `,r}function _p(e){return Object.keys(e).reduce((t,r)=>{let n={};switch(r){case"init":{n={shortFlag:"i",type:"boolean"};break}case"check":{n={aliases:["lint",""],shortFlag:"l",type:"boolean"};break}case"fix":{n={shortFlag:"f",type:"boolean"};break}case"printConfig":{n={shortFlag:"p",type:"boolean"};break}case"help":{n={type:"boolean"};break}case"version":{n={type:"boolean"};break}default:console.error(`Unknown command name: ${r}`)}return t[r]=n,t},{})}async function ut(e,t,r=[]){if(t.command!==void 0&&typeof t.command=="string"){let n;try{let i=Op(t.command,[...t.options??[],...r],{env:{FORCE_COLOR:"true"},stdin:"inherit"});i.stdout?.pipe(e,{end:!1}),i.stderr?.pipe(e,{end:!1}),await i,n=i.exitCode??1}catch(i){n=typeof i.exitCode=="number"?i.exitCode:1}return n}return e.write(`Error: Invalid optionCommand: ${JSON.stringify(t,void 0,2)}`),1}function as(e,t,r){e.length===0&&!t.defaultArguments&&(r.write(`Error: This command must be used with a file argument
48
+ `),process.exit(1))}async function ls(e,t,r,n){let i=is({allowUnknownFlags:!1,booleanDefault:void 0,flags:_p(n),help:Ip(e,n),importMeta:import.meta}),{flags:s,input:o}=i,a=Object.keys(n).reduce((p,d)=>(s[d]&&(p[d]=n[d]),p),{}),l=xp(t,r);l.pipe(process.stdout),Object.keys(a).length===0&&(n.check===void 0?l.write(`This command requires options. Run ${e} --help for valid commands.
49
49
  `):a.check=n.check);let u=0;for(let[p,d]of Object.entries(a))if(typeof d.command=="function"){as(o,d,l);let y=o.length===0?d.defaultArguments??[]:o,w=d.options??[];u+=await d.command(l,y,w)}else if(typeof d.command=="string")as(o,d,l),u+=await ut(l,d,o.length===0?d.defaultArguments:o);else switch(p){case"init":{let y=await vr();if(y===void 0){l.write("Error: The `--init` flag must be used in a directory with a package.json file\n"),u+=1;break}let w=await vr({cwd:Rp(import.meta.url)});if(w===void 0){l.write(`Error: The script being called was not in a package, weird.
50
50
  `),u+=1;break}let b=Er.join(Er.dirname(w),"init/"),f=Er.dirname(y);l.write(`Copying initial configuration files from:
51
51
  "${b}" \u2192 "${f}"
@@ -53,7 +53,7 @@ ${s}`,i=`${s||""}${i}
53
53
  `),u+=1;break}let f=await Cp(b).search(w);if(!f?.config){l.write(`Error: Could not find or parse config file for ${b}.
54
54
  `),u+=1;break}l.write(`${t} config path: "${f?.filepath}"
55
55
  `),l.write(Cr(f.config)),l.write(`
56
- `);break}default:{console.error(`Unknown command name: ${p}`),u+=1;break}}process.exit(u>0?1:0)}var wr={check:["cspell-config","eslint-config","prettier-config","stylelint-config"],init:["cspell-config","eslint-config","prettier-config","remark-config","repo-config","stylelint-config","vscode-config"],printConfig:["cspell-config","eslint-config","prettier-config","remark-config","repo-config","stylelint-config","vscode-config"],help:["cspell-config","eslint-config","prettier-config","remark-config","repo-config","stylelint-config","vscode-config"],version:["cspell-config","eslint-config","prettier-config","remark-config","repo-config","stylelint-config","vscode-config"],fix:["eslint-config","prettier-config","stylelint-config"]};function Pp(e){return e.replaceAll(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,t=>"-"+t.toLowerCase())}function cs(e,t){return t===1?e:e+"s"}async function Np(e,t,r,n){let i=[],s=[];for(let o of t)e.write(`Running "${o}${n.join(" ")} ${r.join(" ")}"
56
+ `);break}default:{console.error(`Unknown command name: ${p}`),u+=1;break}}process.exit(u>0?1:0)}var wr={check:["cspell-config","eslint-config","prettier-config","stylelint-config"],init:["cspell-config","eslint-config","prettier-config","repo-config","remark-config","stylelint-config","vscode-config"],printConfig:["cspell-config","eslint-config","prettier-config","repo-config","remark-config","stylelint-config","vscode-config"],help:["cspell-config","eslint-config","prettier-config","repo-config","remark-config","stylelint-config","vscode-config"],version:["cspell-config","eslint-config","prettier-config","repo-config","remark-config","stylelint-config","vscode-config"],fix:["eslint-config","prettier-config","stylelint-config"]};function Pp(e){return e.replaceAll(/[A-Z\u00C0-\u00D6\u00D8-\u00DE]/g,t=>"-"+t.toLowerCase())}function cs(e,t){return t===1?e:e+"s"}async function Np(e,t,r,n){let i=[],s=[];for(let o of t)e.write(`Running "${o}${n.join(" ")} ${r.join(" ")}"
57
57
  `),await ut(e,{command:o,options:r},n)===0?i.push(o):s.push(o);return i.length>0&&e.write(`\u2705 ${xe.green.bold(`${i.length} Successful ${cs("command",i.length)}:`)} ${i.join(", ")}
58
58
  `),s.length>0&&e.write(`\u274C ${xe.green.bold(`${s.length} Failed ${cs("command",s.length)}:`)} ${s.join(", ")}
59
59
  `),s.length>0?1:0}await ls("shared-config","\u{1F52C}","yellow",Object.keys(wr).reduce((e,t)=>(e[t]={async command(r,n){return Np(r,wr[t],[`--${Pp(t)}`],n)},defaultArguments:[]},e),{}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kitschpatrol/shared-config",
3
- "version": "3.0.2",
3
+ "version": "3.0.3",
4
4
  "type": "module",
5
5
  "description": "Linting and formatting for web projects.",
6
6
  "repository": {
@@ -29,14 +29,16 @@
29
29
  "bin/*"
30
30
  ],
31
31
  "dependencies": {
32
+ "@pinojs/json-colorizer": "^4.0.0",
33
+ "cosmiconfig": "^9.0.0",
32
34
  "execa": "^8.0.1",
33
- "@kitschpatrol/cspell-config": "3.0.2",
34
- "@kitschpatrol/prettier-config": "3.0.2",
35
- "@kitschpatrol/remark-config": "3.0.2",
36
- "@kitschpatrol/eslint-config": "3.0.2",
37
- "@kitschpatrol/repo-config": "3.0.2",
38
- "@kitschpatrol/stylelint-config": "3.0.2",
39
- "@kitschpatrol/vscode-config": "3.0.2"
35
+ "@kitschpatrol/cspell-config": "3.0.3",
36
+ "@kitschpatrol/eslint-config": "3.0.3",
37
+ "@kitschpatrol/prettier-config": "3.0.3",
38
+ "@kitschpatrol/repo-config": "3.0.3",
39
+ "@kitschpatrol/remark-config": "3.0.3",
40
+ "@kitschpatrol/stylelint-config": "3.0.3",
41
+ "@kitschpatrol/vscode-config": "3.0.3"
40
42
  },
41
43
  "devDependencies": {
42
44
  "camelcase": "^8.0.0",