@under_koen/bsm 0.0.2 → 0.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.
- package/dist/index.js +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#! /usr/bin/env node
|
|
2
|
-
"use strict";var X=Object.create;var
|
|
2
|
+
"use strict";var X=Object.create;var R=Object.defineProperty;var Q=Object.getOwnPropertyDescriptor;var Y=Object.getOwnPropertyNames;var V=Object.getPrototypeOf,k=Object.prototype.hasOwnProperty;var nn=(n,i)=>()=>(i||n((i={exports:{}}).exports,i),i.exports);var en=(n,i,e,o)=>{if(i&&typeof i=="object"||typeof i=="function")for(let t of Y(i))!k.call(n,t)&&t!==e&&R(n,t,{get:()=>i[t],enumerable:!(o=Q(i,t))||o.enumerable});return n};var P=(n,i,e)=>(e=n!=null?X(V(n)):{},en(i||!n||!n.__esModule?R(e,"default",{value:n,enumerable:!0}):e,n));var W=nn((pn,U)=>{"use strict";function on(n,i){var e=n;i.slice(0,-1).forEach(function(t){e=e[t]||{}});var o=i[i.length-1];return o in e}function K(n){return typeof n=="number"||/^0x[0-9a-f]+$/i.test(n)?!0:/^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(n)}function G(n,i){return i==="constructor"&&typeof n[i]=="function"||i==="__proto__"}U.exports=function(n,i){i||(i={});var e={bools:{},strings:{},unknownFn:null};typeof i.unknown=="function"&&(e.unknownFn=i.unknown),typeof i.boolean=="boolean"&&i.boolean?e.allBools=!0:[].concat(i.boolean).filter(Boolean).forEach(function(r){e.bools[r]=!0});var o={};function t(r){return o[r].some(function(a){return e.bools[a]})}Object.keys(i.alias||{}).forEach(function(r){o[r]=[].concat(i.alias[r]),o[r].forEach(function(a){o[a]=[r].concat(o[r].filter(function(S){return a!==S}))})}),[].concat(i.string).filter(Boolean).forEach(function(r){e.strings[r]=!0,o[r]&&[].concat(o[r]).forEach(function(a){e.strings[a]=!0})});var s=i.default||{},u={_:[]};function O(r,a){return e.allBools&&/^--[^=]+$/.test(a)||e.strings[r]||e.bools[r]||o[r]}function $(r,a,S){for(var c=r,A=0;A<a.length-1;A++){var v=a[A];if(G(c,v))return;c[v]===void 0&&(c[v]={}),(c[v]===Object.prototype||c[v]===Number.prototype||c[v]===String.prototype)&&(c[v]={}),c[v]===Array.prototype&&(c[v]=[]),c=c[v]}var g=a[a.length-1];G(c,g)||((c===Object.prototype||c===Number.prototype||c===String.prototype)&&(c={}),c===Array.prototype&&(c=[]),c[g]===void 0||e.bools[g]||typeof c[g]=="boolean"?c[g]=S:Array.isArray(c[g])?c[g].push(S):c[g]=[c[g],S])}function p(r,a,S){if(!(S&&e.unknownFn&&!O(r,S)&&e.unknownFn(S)===!1)){var c=!e.strings[r]&&K(a)?Number(a):a;$(u,r.split("."),c),(o[r]||[]).forEach(function(A){$(u,A.split("."),c)})}}Object.keys(e.bools).forEach(function(r){p(r,s[r]===void 0?!1:s[r])});var B=[];n.indexOf("--")!==-1&&(B=n.slice(n.indexOf("--")+1),n=n.slice(0,n.indexOf("--")));for(var d=0;d<n.length;d++){var f=n[d],l,w;if(/^--.+=/.test(f)){var D=f.match(/^--([^=]+)=([\s\S]*)$/);l=D[1];var x=D[2];e.bools[l]&&(x=x!=="false"),p(l,x,f)}else if(/^--no-.+/.test(f))l=f.match(/^--no-(.+)/)[1],p(l,!1,f);else if(/^--.+/.test(f))l=f.match(/^--(.+)/)[1],w=n[d+1],w!==void 0&&!/^(-|--)[^-]/.test(w)&&!e.bools[l]&&!e.allBools&&(!o[l]||!t(l))?(p(l,w,f),d+=1):/^(true|false)$/.test(w)?(p(l,w==="true",f),d+=1):p(l,e.strings[l]?"":!0,f);else if(/^-[^-]+/.test(f)){for(var m=f.slice(1,-1).split(""),E=!1,b=0;b<m.length;b++){if(w=f.slice(b+2),w==="-"){p(m[b],w,f);continue}if(/[A-Za-z]/.test(m[b])&&w[0]==="="){p(m[b],w.slice(1),f),E=!0;break}if(/[A-Za-z]/.test(m[b])&&/-?\d+(\.\d*)?(e-?\d+)?$/.test(w)){p(m[b],w,f),E=!0;break}if(m[b+1]&&m[b+1].match(/\W/)){p(m[b],f.slice(b+2),f),E=!0;break}else p(m[b],e.strings[m[b]]?"":!0,f)}l=f.slice(-1)[0],!E&&l!=="-"&&(n[d+1]&&!/^(-|--)[^-]/.test(n[d+1])&&!e.bools[l]&&(!o[l]||!t(l))?(p(l,n[d+1],f),d+=1):n[d+1]&&/^(true|false)$/.test(n[d+1])?(p(l,n[d+1]==="true",f),d+=1):p(l,e.strings[l]?"":!0,f))}else if((!e.unknownFn||e.unknownFn(f)!==!1)&&u._.push(e.strings._||!K(f)?f:Number(f)),i.stopEarly){u._.push.apply(u._,n.slice(d+1));break}}return Object.keys(s).forEach(function(r){on(u,r.split("."))||($(u,r.split("."),s[r]),(o[r]||[]).forEach(function(a){$(u,a.split("."),s[r])}))}),i["--"]?u["--"]=B.slice():B.forEach(function(r){u._.push(r)}),u}});var z=P(W());function y(n){return n!==null&&typeof n=="object"}function j(n,i,e=".",o){if(!y(i))return j(n,{},e,o);let t=Object.assign({},i);for(let s in n){if(s==="__proto__"||s==="constructor")continue;let u=n[s];u!=null&&(o&&o(t,s,u,e)||(Array.isArray(u)&&Array.isArray(t[s])?t[s]=[...u,...t[s]]:y(u)&&y(t[s])?t[s]=j(u,t[s],(e?`${e}.`:"")+s.toString(),o):t[s]=u))}return t}function N(n){return(...i)=>i.reduce((e,o)=>j(e,o,"",n),{})}var I=N(),bn=N((n,i,e)=>{if(typeof n[i]<"u"&&typeof e=="function")return n[i]=e(n[i]),!0}),wn=N((n,i,e)=>{if(Array.isArray(n[i])&&typeof e=="function")return n[i]=e(n[i]),!0});var J=P(require("node:child_process")),C=P(require("node:fs")),F=P(require("path")),h=(0,z.default)(process.argv.slice(2),{"--":!0}),L=h.config?[h.config]:[process.env.BSM_CONFIG,"./package.scripts.js","./package.scripts.json"],{config:M,file:rn}=L.reduce((n,i)=>{if(n||!i)return n;let e=Z(i);if(e)return{config:e,file:i}},void 0)??{};process.env.BSM_CONFIG=rn;var q={scripts:{},config:{allowFunction:!1}};function Z(n){if(n)try{n=require.resolve(n,{paths:[process.cwd()]});let i=require(n);if(Object.hasOwn(i,"extends")&&i.extends){let e=[];for(let o of i.extends){let t=Z(o);t?e.push(t):(console.error(`\x1B[31mCannot find config '${o}' to extend\x1B[0m`),process.exit(1))}return I(i,...e,q)}else return I(i,q)}catch(i){if(i.code==="MODULE_NOT_FOUND")return;console.error(`\x1B[31mError loading config '${n}'\x1B[0m`),console.error(i),process.exit(1)}}async function tn(){M||(console.error(`\x1B[31mCannot find config ${L.filter(n=>n!==void 0).map(n=>`'${n}'`).join(" or ")}\x1B[0m`),process.exit(1)),sn(process.env,await fn());for(let n of h._){if(n.startsWith("~")&&process.env.BSM_PATH){let i=process.env.BSM_PATH.split("."),e=H(M.scripts,i);if(e){await _(e,n.split(".").splice(1),i);continue}}await _(M.scripts,n.split("."))}}function sn(n,i){if(i)if(process.platform==="win32"){if(!process.env.Path||process.env.Path.includes(i))return;n.Path=`${process.env.Path};${i}`}else{if(!process.env.PATH||process.env.PATH.includes(i))return;n.PATH=`${process.env.PATH}:${i}`}}async function fn(){let n=process.cwd();for(;await C.promises.access(F.default.join(n,"node_modules/.bin"),C.constants.X_OK).then(()=>!1,()=>!0);){let i=F.default.join(n,"../");if(i===n)return null;n=i}return F.default.join(n,"node_modules/.bin")}function H(n,i){if(i.length===0)return n;let e=i[0];if(typeof n=="object"&&Object.hasOwn(n,e))if(Array.isArray(n)){let o=parseInt(e);return H(n[o],i.slice(1))}else return H(n[e],i.slice(1))}async function _(n,i,e=[],o=!0){try{if(typeof n=="function"){let s=await un(n,i,e);if(!s&&i.length===0)return;await _(s??{},i,e,o);return}await T(n,["_pre"],e,!1,!0);let t=i.slice(1);if(i.length===0)await ln(n,e,o);else if(i[0]==="*")await cn(n,t,e);else if(!await T(n,i,e))return console.error(`\x1B[31mScript '${[...e,...i].join(".")}' not found\x1B[0m`),process.exit(127);await T(n,["_post"],e,!1,!0)}catch(t){if(process.env.BSM_ERROR=t.code.toString(),await T(n,["_onError"],e,!1,!0),!await T(n,["_catch"],e,!1))throw t}finally{await T(n,["_finally"],e,!1,!0)}}async function cn(n,i,e){if(typeof n=="string")await _(n,i,e);else if(typeof n=="function")process.exit(100);else if(Array.isArray(n))for(let o=0;o<n.length;o++)await _(n[o],i,[...e,o.toString()]);else for(let o in n)o.startsWith("_")||Object.hasOwn(n,o)&&await _(n[o],i,[...e,o])}async function un(n,i,e){return console.log(`> \x1B[93mExecuting JavaScript function\x1B[0m \x1B[90m(${[...e].join(".")})\x1B[0m`),await n.call(null,h["--"])}async function T(n,i,e,o=!0,t=!1){if(t&&process.env.BSM_SCRIPT===[...e,...i].join("."))return!1;let s=i[0];if(typeof n!="object"||!Object.hasOwn(n,s))return!1;if(Array.isArray(n)){let u=parseInt(s);await _(n[u],i.slice(1),[...e,s],o)}else await _(n[s],i.slice(1),[...e,s],o);return!0}async function ln(n,i,e){switch(typeof n){case"string":await an(n,i,e);return;case"object":if(Array.isArray(n))for(let o=0;o<n.length;o++)await _(n[o],[],[...i,o.toString()]);else if(!await T(n,[`_${process.platform}`],i)){if(!await T(n,["_default"],i))return console.error(`\x1B[31mScript '${[...i].join(".")}' is not executable\x1B[0m`),process.exit(127)}return}}async function an(n,i,e){var o;if(e&&((o=h["--"])!=null&&o.length)&&(n+=" "+h["--"].join(" ")),console.log(`> ${n} \x1B[90m(${i.join(".")})\x1B[0m`),n!=="")return await new Promise((t,s)=>{J.default.spawn(n,[],{stdio:"inherit",shell:!0,env:{...process.env,BSM_PATH:i.slice(0,-1).join("."),BSM_SCRIPT:i.join(".")}}).on("close",O=>{O===0?t():s({code:O,script:i.join(".")})})})}tn().catch(n=>{console.error(`\x1B[31mScript failed with code ${n.code}\x1B[0m \x1B[90m(${n.script})\x1B[0m`),process.exit(n.code)});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@under_koen/bsm",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"description": "BSM (Basic Script Manager) is a useful tool that enables you to create clear and concise scripts without cluttering your `package.json` file.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Koen van Staveren <koen@underkoen.nl>",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"@types/node": "^18.16.3",
|
|
32
32
|
"@typescript-eslint/eslint-plugin": "^5.59.2",
|
|
33
33
|
"@typescript-eslint/parser": "^5.59.2",
|
|
34
|
-
"@under_koen/bsm": "^0.0.
|
|
34
|
+
"@under_koen/bsm": "^0.0.2",
|
|
35
35
|
"defu": "^6.1.2",
|
|
36
36
|
"esbuild": "0.17.18",
|
|
37
37
|
"eslint": "^8.39.0",
|