Files
codeql-action/node_modules/get-tsconfig/dist/index.cjs
2023-07-13 09:09:17 +00:00

4 lines
16 KiB
JavaScript
Executable File

"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var fe=require("path"),re=require("fs"),ae=require("module"),pe=require("resolve-pkg-maps");function x(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var f=x(fe),h=x(re),ge=x(ae);function L(e){return e.startsWith("\\\\?\\")?e:e.replace(/\\/g,"/")}const X=(e,l)=>{for(;;){const i=f.default.posix.join(e,l);if(h.default.existsSync(i))return i;const n=f.default.dirname(e);if(n===e)return;e=n}},S=/^\.{1,2}(\/.*)?$/,V=e=>{const l=L(e);return S.test(l)?l:`./${l}`};function me(e,l=!1){const i=e.length;let n=0,t="",o=0,u=16,m=0,a=0,_=0,p=0,T=0;function k(s,r){let c=0,d=0;for(;c<s||!r;){let w=e.charCodeAt(n);if(w>=48&&w<=57)d=d*16+w-48;else if(w>=65&&w<=70)d=d*16+w-65+10;else if(w>=97&&w<=102)d=d*16+w-97+10;else break;n++,c++}return c<s&&(d=-1),d}function j(s){n=s,t="",o=0,u=16,T=0}function v(){let s=n;if(e.charCodeAt(n)===48)n++;else for(n++;n<e.length&&$(e.charCodeAt(n));)n++;if(n<e.length&&e.charCodeAt(n)===46)if(n++,n<e.length&&$(e.charCodeAt(n)))for(n++;n<e.length&&$(e.charCodeAt(n));)n++;else return T=3,e.substring(s,n);let r=n;if(n<e.length&&(e.charCodeAt(n)===69||e.charCodeAt(n)===101))if(n++,(n<e.length&&e.charCodeAt(n)===43||e.charCodeAt(n)===45)&&n++,n<e.length&&$(e.charCodeAt(n))){for(n++;n<e.length&&$(e.charCodeAt(n));)n++;r=n}else T=3;return e.substring(s,r)}function b(){let s="",r=n;for(;;){if(n>=i){s+=e.substring(r,n),T=2;break}const c=e.charCodeAt(n);if(c===34){s+=e.substring(r,n),n++;break}if(c===92){if(s+=e.substring(r,n),n++,n>=i){T=2;break}switch(e.charCodeAt(n++)){case 34:s+='"';break;case 92:s+="\\";break;case 47:s+="/";break;case 98:s+="\b";break;case 102:s+="\f";break;case 110:s+=`
`;break;case 114:s+="\r";break;case 116:s+=" ";break;case 117:const w=k(4,!0);w>=0?s+=String.fromCharCode(w):T=4;break;default:T=5}r=n;continue}if(c>=0&&c<=31)if(N(c)){s+=e.substring(r,n),T=2;break}else T=6;n++}return s}function A(){if(t="",T=0,o=n,a=m,p=_,n>=i)return o=i,u=17;let s=e.charCodeAt(n);if(M(s)){do n++,t+=String.fromCharCode(s),s=e.charCodeAt(n);while(M(s));return u=15}if(N(s))return n++,t+=String.fromCharCode(s),s===13&&e.charCodeAt(n)===10&&(n++,t+=`
`),m++,_=n,u=14;switch(s){case 123:return n++,u=1;case 125:return n++,u=2;case 91:return n++,u=3;case 93:return n++,u=4;case 58:return n++,u=6;case 44:return n++,u=5;case 34:return n++,t=b(),u=10;case 47:const r=n-1;if(e.charCodeAt(n+1)===47){for(n+=2;n<i&&!N(e.charCodeAt(n));)n++;return t=e.substring(r,n),u=12}if(e.charCodeAt(n+1)===42){n+=2;const c=i-1;let d=!1;for(;n<c;){const w=e.charCodeAt(n);if(w===42&&e.charCodeAt(n+1)===47){n+=2,d=!0;break}n++,N(w)&&(w===13&&e.charCodeAt(n)===10&&n++,m++,_=n)}return d||(n++,T=1),t=e.substring(r,n),u=13}return t+=String.fromCharCode(s),n++,u=16;case 45:if(t+=String.fromCharCode(s),n++,n===i||!$(e.charCodeAt(n)))return u=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return t+=v(),u=11;default:for(;n<i&&B(s);)n++,s=e.charCodeAt(n);if(o!==n){switch(t=e.substring(o,n),t){case"true":return u=8;case"false":return u=9;case"null":return u=7}return u=16}return t+=String.fromCharCode(s),n++,u=16}}function B(s){if(M(s)||N(s))return!1;switch(s){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}function U(){let s;do s=A();while(s>=12&&s<=15);return s}return{setPosition:j,getPosition:()=>n,scan:l?U:A,getToken:()=>u,getTokenValue:()=>t,getTokenOffset:()=>o,getTokenLength:()=>n-o,getTokenStartLine:()=>a,getTokenStartCharacter:()=>o-p,getTokenError:()=>T}}function M(e){return e===32||e===9}function N(e){return e===10||e===13}function $(e){return e>=48&&e<=57}var Y;(function(e){e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.space=32]="space",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.asterisk=42]="asterisk",e[e.backslash=92]="backslash",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.plus=43]="plus",e[e.slash=47]="slash",e[e.formFeed=12]="formFeed",e[e.tab=9]="tab"})(Y||(Y={}));var y;(function(e){e.DEFAULT={allowTrailingComma:!1}})(y||(y={}));function ke(e,l=[],i=y.DEFAULT){let n=null,t=[];const o=[];function u(a){Array.isArray(t)?t.push(a):n!==null&&(t[n]=a)}return be(e,{onObjectBegin:()=>{const a={};u(a),o.push(t),t=a,n=null},onObjectProperty:a=>{n=a},onObjectEnd:()=>{t=o.pop()},onArrayBegin:()=>{const a=[];u(a),o.push(t),t=a,n=null},onArrayEnd:()=>{t=o.pop()},onLiteralValue:u,onError:(a,_,p)=>{l.push({error:a,offset:_,length:p})}},i),t[0]}function be(e,l,i=y.DEFAULT){const n=me(e,!1),t=[];function o(g){return g?()=>g(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function u(g){return g?()=>g(n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>t.slice()):()=>!0}function m(g){return g?O=>g(O,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter()):()=>!0}function a(g){return g?O=>g(O,n.getTokenOffset(),n.getTokenLength(),n.getTokenStartLine(),n.getTokenStartCharacter(),()=>t.slice()):()=>!0}const _=u(l.onObjectBegin),p=a(l.onObjectProperty),T=o(l.onObjectEnd),k=u(l.onArrayBegin),j=o(l.onArrayEnd),v=a(l.onLiteralValue),b=m(l.onSeparator),A=o(l.onComment),B=m(l.onError),U=i&&i.disallowComments,s=i&&i.allowTrailingComma;function r(){for(;;){const g=n.scan();switch(n.getTokenError()){case 4:c(14);break;case 5:c(15);break;case 3:c(13);break;case 1:U||c(11);break;case 2:c(12);break;case 6:c(16);break}switch(g){case 12:case 13:U?c(10):A();break;case 16:c(1);break;case 15:case 14:break;default:return g}}}function c(g,O=[],q=[]){if(B(g),O.length+q.length>0){let F=n.getToken();for(;F!==17;){if(O.indexOf(F)!==-1){r();break}else if(q.indexOf(F)!==-1)break;F=r()}}}function d(g){const O=n.getTokenValue();return g?v(O):(p(O),t.push(O)),r(),!0}function w(){switch(n.getToken()){case 11:const g=n.getTokenValue();let O=Number(g);isNaN(O)&&(c(2),O=0),v(O);break;case 7:v(null);break;case 8:v(!0);break;case 9:v(!1);break;default:return!1}return r(),!0}function oe(){return n.getToken()!==10?(c(3,[],[2,5]),!1):(d(!1),n.getToken()===6?(b(":"),r(),P()||c(4,[],[2,5])):c(5,[],[2,5]),t.pop(),!0)}function ue(){_(),r();let g=!1;for(;n.getToken()!==2&&n.getToken()!==17;){if(n.getToken()===5){if(g||c(4,[],[]),b(","),r(),n.getToken()===2&&s)break}else g&&c(6,[],[]);oe()||c(4,[],[2,5]),g=!0}return T(),n.getToken()!==2?c(7,[2],[]):r(),!0}function ce(){k(),r();let g=!0,O=!1;for(;n.getToken()!==4&&n.getToken()!==17;){if(n.getToken()===5){if(O||c(4,[],[]),b(","),r(),n.getToken()===4&&s)break}else O&&c(6,[],[]);g?(t.push(0),g=!1):t[t.length-1]++,P()||c(4,[],[4,5]),O=!0}return j(),g||t.pop(),n.getToken()!==4?c(8,[4],[]):r(),!0}function P(){switch(n.getToken()){case 3:return ce();case 1:return ue();case 10:return d(!0);default:return w()}}return r(),n.getToken()===17?i.allowEmptyContent?!0:(c(4,[],[]),!1):P()?(n.getToken()!==17&&c(9,[],[]),!0):(c(4,[],[]),!1)}var Z;(function(e){e[e.None=0]="None",e[e.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=2]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",e[e.InvalidUnicode=4]="InvalidUnicode",e[e.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",e[e.InvalidCharacter=6]="InvalidCharacter"})(Z||(Z={}));var K;(function(e){e[e.OpenBraceToken=1]="OpenBraceToken",e[e.CloseBraceToken=2]="CloseBraceToken",e[e.OpenBracketToken=3]="OpenBracketToken",e[e.CloseBracketToken=4]="CloseBracketToken",e[e.CommaToken=5]="CommaToken",e[e.ColonToken=6]="ColonToken",e[e.NullKeyword=7]="NullKeyword",e[e.TrueKeyword=8]="TrueKeyword",e[e.FalseKeyword=9]="FalseKeyword",e[e.StringLiteral=10]="StringLiteral",e[e.NumericLiteral=11]="NumericLiteral",e[e.LineCommentTrivia=12]="LineCommentTrivia",e[e.BlockCommentTrivia=13]="BlockCommentTrivia",e[e.LineBreakTrivia=14]="LineBreakTrivia",e[e.Trivia=15]="Trivia",e[e.Unknown=16]="Unknown",e[e.EOF=17]="EOF"})(K||(K={}));const Te=ke;var C;(function(e){e[e.InvalidSymbol=1]="InvalidSymbol",e[e.InvalidNumberFormat=2]="InvalidNumberFormat",e[e.PropertyNameExpected=3]="PropertyNameExpected",e[e.ValueExpected=4]="ValueExpected",e[e.ColonExpected=5]="ColonExpected",e[e.CommaExpected=6]="CommaExpected",e[e.CloseBraceExpected=7]="CloseBraceExpected",e[e.CloseBracketExpected=8]="CloseBracketExpected",e[e.EndOfFileExpected=9]="EndOfFileExpected",e[e.InvalidCommentToken=10]="InvalidCommentToken",e[e.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",e[e.UnexpectedEndOfString=12]="UnexpectedEndOfString",e[e.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",e[e.InvalidUnicode=14]="InvalidUnicode",e[e.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",e[e.InvalidCharacter=16]="InvalidCharacter"})(C||(C={}));const ee=e=>Te(h.default.readFileSync(e,"utf8")),{existsSync:E}=h.default,ve=()=>{const{findPnpApi:e}=ge.default;return e&&e(process.cwd())},W=(e,l,i)=>{let n="tsconfig.json";const t=ee(e);if(t)if(!i&&t.exports)try{const[o]=pe.resolveExports(t.exports,l,["require","types"]);n=o}catch{return}else!l&&t.tsconfig&&(n=t.tsconfig);return f.default.join(e,"..",n)},J="package.json",R="tsconfig.json",we=(e,l)=>{let i=e;if(e===".."&&(i=f.default.join(i,R)),e[0]==="."&&(i=f.default.resolve(l,i)),f.default.isAbsolute(i)){if(E(i)){if(h.default.statSync(i).isFile())return i}else if(!i.endsWith(".json")){const k=`${i}.json`;if(E(k))return k}return}const[n,...t]=e.split("/"),o=n[0]==="@"?`${n}/${t.shift()}`:n,u=t.join("/"),m=ve();if(m){const{resolveRequest:k}=m;try{if(o===e){const j=k(f.default.join(o,J),l);if(j){const v=W(j,u);if(v&&E(v))return v}}else{let j;try{j=k(e,l,{extensions:[".json"]})}catch{j=k(f.default.join(e,R),l)}if(j)return j}}catch{}}const a=X(l,f.default.join("node_modules",o));if(!a||!h.default.statSync(a).isDirectory())return;const _=f.default.join(a,J);if(E(_)){const k=W(_,u);if(!k)return;if(E(k))return k}const p=f.default.join(a,u),T=p.endsWith(".json");if(!T){const k=`${p}.json`;if(E(k))return k}if(E(p)){if(h.default.statSync(p).isDirectory()){const k=f.default.join(p,J);if(E(k)){const v=W(k,"",!0);if(v&&E(v))return v}const j=f.default.join(p,R);if(E(j))return j}else if(T)return p}},Oe=(e,l)=>{var i;const n=we(e,l);if(!n)throw new Error(`File '${e}' not found.`);const t=G(n);if(delete t.references,(i=t.compilerOptions)!=null&&i.baseUrl){const{compilerOptions:o}=t;o.baseUrl=f.default.relative(l,f.default.join(f.default.dirname(n),o.baseUrl))||"./"}return t.files&&(t.files=t.files.map(o=>f.default.relative(l,f.default.join(f.default.dirname(n),o)))),t.include&&(t.include=t.include.map(o=>f.default.relative(l,f.default.join(f.default.dirname(n),o)))),t},G=e=>{let l;try{l=h.default.realpathSync(e)}catch{throw new Error(`Cannot resolve tsconfig at path: ${e}`)}const i=f.default.dirname(l);let n=ee(l)||{};if(typeof n!="object")throw new SyntaxError(`Failed to parse tsconfig at: ${e}`);if(n.extends){const t=Array.isArray(n.extends)?n.extends:[n.extends];delete n.extends;for(const o of t.reverse()){const u=Oe(o,i),m={...u,...n,compilerOptions:{...u.compilerOptions,...n.compilerOptions}};u.watchOptions&&(m.watchOptions={...u.watchOptions,...n.watchOptions}),n=m}}if(n.compilerOptions){const{compilerOptions:t}=n;if(t.baseUrl){const o=f.default.resolve(i,t.baseUrl),u=V(f.default.relative(i,o));t.baseUrl=u}t.outDir&&(Array.isArray(n.exclude)||(n.exclude=[]),n.exclude.push(t.outDir),t.outDir=V(t.outDir))}else n.compilerOptions={};if(n.files&&(n.files=n.files.map(V)),n.include&&(n.include=n.include.map(L)),n.watchOptions){const{watchOptions:t}=n;t.excludeDirectories&&(t.excludeDirectories=t.excludeDirectories.map(o=>L(f.default.resolve(i,o))))}return n},je=(e=process.cwd(),l="tsconfig.json")=>{const i=X(L(e),l);if(!i)return null;const n=G(i);return{path:i,config:n}},Ae=/\*/g,ne=(e,l)=>{const i=e.match(Ae);if(i&&i.length>1)throw new Error(l)},de=e=>{if(e.includes("*")){const[l,i]=e.split("*");return{prefix:l,suffix:i}}return e},_e=({prefix:e,suffix:l},i)=>i.startsWith(e)&&i.endsWith(l),Ee=(e,l,i)=>Object.entries(e).map(([n,t])=>(ne(n,`Pattern '${n}' can have at most one '*' character.`),{pattern:de(n),substitutions:t.map(o=>{if(ne(o,`Substitution '${o}' in pattern '${n}' can have at most one '*' character.`),!l&&!S.test(o))throw new Error("Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?");return f.default.resolve(i,o)})})),Le=e=>{if(!e.config.compilerOptions)return null;const{baseUrl:l,paths:i}=e.config.compilerOptions;if(!l&&!i)return null;const n=f.default.resolve(f.default.dirname(e.path),l||"."),t=i?Ee(i,l,n):[];return o=>{if(S.test(o))return[];const u=[];for(const p of t){if(p.pattern===o)return p.substitutions.map(L);typeof p.pattern!="string"&&u.push(p)}let m,a=-1;for(const p of u)_e(p.pattern,o)&&p.pattern.prefix.length>a&&(a=p.pattern.prefix.length,m=p);if(!m)return l?[L(f.default.join(n,o))]:[];const _=o.slice(m.pattern.prefix.length,o.length-m.pattern.suffix.length);return m.substitutions.map(p=>L(p.replace("*",_)))}},te=e=>{let l="";for(let i=0;i<e.length;i+=1){const n=e[i],t=n.toUpperCase();l+=n===t?n.toLowerCase():t}return l},he=65,Be=97,Ue=()=>Math.floor(Math.random()*26),$e=e=>Array.from({length:e},()=>String.fromCodePoint(Ue()+(Math.random()>.5?he:Be))).join(""),Ne=(e=h.default)=>{const l=process.execPath;if(e.existsSync(l))return!e.existsSync(te(l));const i=`/${$e(10)}`;e.writeFileSync(i,"");const n=!e.existsSync(te(i));return e.unlinkSync(i),n},{join:D}=f.default.posix,z={ts:[".ts",".tsx",".d.ts"],cts:[".cts",".d.cts"],mts:[".mts",".d.mts"]},Fe=e=>{const l=[...z.ts],i=[...z.cts],n=[...z.mts];return e!=null&&e.allowJs&&(l.push(".js",".jsx"),i.push(".cjs"),n.push(".mjs")),[...l,...i,...n]},ye=e=>{const l=[];if(!e)return l;const{outDir:i,declarationDir:n}=e;return i&&l.push(i),n&&l.push(n),l},ie=e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),De=["node_modules","bower_components","jspm_packages"],Q=`(?!(${De.join("|")})(/|$))`,Ie=/(?:^|\/)[^.*?]+$/,le="**/*",I="[^/]",H="[^./]",se=process.platform==="win32",Pe=({config:e,path:l},i=Ne())=>{if("extends"in e)throw new Error("tsconfig#extends must be resolved. Use getTsconfig or parseTsconfig to resolve it.");if(!f.default.isAbsolute(l))throw new Error("The tsconfig path must be absolute");se&&(l=L(l));const n=f.default.dirname(l),{files:t,include:o,exclude:u,compilerOptions:m}=e,a=t==null?void 0:t.map(b=>D(n,b)),_=Fe(m),p=i?"":"i",k=(u||ye(m)).map(b=>{const A=D(n,b),B=ie(A).replace(/\\\*\\\*\//g,"(.+/)?").replace(/\\\*/g,`${I}*`).replace(/\\\?/g,I);return new RegExp(`^${B}($|/)`,p)}),j=t||o?o:[le],v=j?j.map(b=>{let A=D(n,b);Ie.test(A)&&(A=D(A,le));const B=ie(A).replace(/\/\\\*\\\*/g,`(/${Q}${H}${I}*)*?`).replace(/(\/)?\\\*/g,(U,s)=>{const r=`(${H}|(\\.(?!min\\.js$))?)*`;return s?`/${Q}${H}${r}`:r}).replace(/(\/)?\\\?/g,(U,s)=>{const r=I;return s?`/${Q}${r}`:r});return new RegExp(`^${B}$`,p)}):void 0;return b=>{if(!f.default.isAbsolute(b))throw new Error("filePath must be absolute");if(se&&(b=L(b)),a!=null&&a.includes(b))return e;if(!(!_.some(A=>b.endsWith(A))||k.some(A=>A.test(b)))&&v&&v.some(A=>A.test(b)))return e}};exports.createFilesMatcher=Pe,exports.createPathsMatcher=Le,exports.getTsconfig=je,exports.parseTsconfig=G;