npm-package-json-lint
Version:
Configurable linter for package.json files.
2 lines (1 loc) • 2.21 kB
JavaScript
var b=Object.create;var a=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var x=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var D=(e,n)=>{for(var s in n)a(e,s,{get:n[s],enumerable:!0})},g=(e,n,s,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of m(n))!P.call(e,i)&&i!==s&&a(e,i,{get:()=>n[i],enumerable:!(t=A(n,i))||t.enumerable});return e};var y=(e,n,s)=>(s=e!=null?b(x(e)):{},g(n||!e||!e.__esModule?a(s,"default",{value:e,enumerable:!0}):s,e)),F=e=>g(a({},"__esModule",{value:!0}),e);var I={};D(I,{lint:()=>M,ruleType:()=>k});module.exports=F(I);var S=require("semver"),O=e=>typeof e=="object"&&e.hasOwnProperty("exceptions");var v=(e,n,s)=>{let c=!0,d=0,V=[],f=[];for(let p in e[n]){if(O(s)&&s.exceptions.includes(p))continue;let r=e[n][p];r.startsWith("^",0)||r.startsWith("~",0)||r.startsWith(">",0)||r.startsWith("<",0)||r.indexOf("*")!==-1?(c=!1,f.push(p)):V.push(p),d+=1}return{onlyAbsoluteVersionDetected:c,dependenciesChecked:d,dependenciesWithAbsoluteVersion:V,dependenciesWithoutAbsoluteVersion:f}};var R=(e,n,s)=>{let{onlyAbsoluteVersionDetected:t,dependenciesChecked:i,dependenciesWithAbsoluteVersion:c,dependenciesWithoutAbsoluteVersion:d}=v(e,n,s);return{onlyNonAbsoluteVersionsDetected:i>0?!t:!1,dependenciesWithAbsoluteVersion:c,dependenciesWithoutAbsoluteVersion:d}};var j=require("jsonc-parser"),W=(e,n)=>e.hasOwnProperty(n);var o=y(require("chalk")),h=y(require("log-symbols"));var l=class{constructor(n,s,t,i){this.lintId=n,this.severity=s,this.node=t,this.lintMessage=i}toString(){let n=this.severity==="error"?h.default.error:h.default.warning,s=o.default.cyan.bold(this.lintId),t=o.default.magenta.bold(this.node),i=this.severity==="error"?o.default.red.bold(this.lintMessage):o.default.yellow(this.lintMessage);return`${n} ${s} - node: ${t} - ${i}`}};var U="prefer-absolute-version-devDependencies",u="devDependencies",k="optionalObject",M=(e,n,s)=>{let t=R(e,u,s);return W(e,u)&&t.onlyNonAbsoluteVersionsDetected?new l(U,n,u,`You are using an invalid version range. Please use absolute versions. Invalid ${u} include: ${t.dependenciesWithoutAbsoluteVersion.join(", ")}`):null};0&&(module.exports={lint,ruleType});