projecte_ionic/node_modules/ts-node/dist/index.js.map
2022-02-09 18:30:03 +01:00

1 line
33 KiB
Plaintext
Executable file
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,+BAA0E;AAC1E,uDAAuD;AACvD,2BAAmB;AACnB,2CAAsC;AACtC,6BAA4B;AAG5B;;GAEG;AACU,QAAA,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,SAAS,CAAA;AAE9D;;GAEG;AACH,MAAM,WAAW,GAAG,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;AACjD,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,CAAA;AAClF,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC;IAC3B,CAAQ,GAAW,EAAE,EAAiB,EAAE,EAAE;QACxC,IAAI,CAAC,GAAG,CAAC,CAAA;QACT,OAAO,CAAC,CAAI,EAAE,EAAE;YACd,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;YAClB,OAAO,EAAE,CAAC,CAAC,CAAC,CAAA;QACd,CAAC,CAAA;IACH,CAAC,CAAC,CAAC;IACH,CAAQ,CAAS,EAAE,EAAiB,EAAE,EAAE,CAAC,EAAE,CAAA;AAwB7C;;GAEG;AACU,QAAA,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAA;AAwBzD;;GAEG;AACH,MAAM,WAAW;IAIf,YAAa,gBAA0B,EAAE;QAHzC,iBAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;QACxC,iBAAY,GAAG,IAAI,GAAG,EAAkB,CAAA;QAGtC,KAAK,MAAM,QAAQ,IAAI,aAAa;YAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;IAC1E,CAAC;CACF;AAUD;;GAEG;AACU,QAAA,QAAQ,GAAY;IAC/B,KAAK,EAAE,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACvC,MAAM,EAAE,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACzC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACzC,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAC/D,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC5C,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;IACvC,UAAU,EAAE,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAClD,WAAW,EAAE,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACpD,YAAY,EAAE,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACvD,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IACnE,SAAS,EAAE,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAChD,aAAa,EAAE,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACxD,QAAQ,EAAE,YAAE,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;CAC/C,CAAA;AAED;;GAEG;AACH,MAAM,wBAAwB,GAAG;IAC/B,SAAS,EAAE,IAAI;IACf,eAAe,EAAE,KAAK;IACtB,aAAa,EAAE,IAAI;IACnB,WAAW,EAAE,KAAK;IAClB,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,aAAa;CACtB,CAAA;AAED;;GAEG;AACH,SAAgB,KAAK,CAAE,KAAyB;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AACtE,CAAC;AAFD,sBAEC;AAED;;GAEG;AACH,SAAgB,KAAK,CAAE,KAAyB;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAClE,CAAC;AAFD,sBAEC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAE,KAAa;IAC7C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAClC,CAAC;AAFD,4CAEC;AAED;;GAEG;AACH,MAAa,OAAQ,SAAQ,sBAAS;IAGpC,YAAoB,cAAsB,EAAS,eAAyB;QAC1E,KAAK,CAAC,oCAAoC,cAAc,EAAE,CAAC,CAAA;QADzC,mBAAc,GAAd,cAAc,CAAQ;QAAS,oBAAe,GAAf,eAAe,CAAU;QAF5E,SAAI,GAAG,SAAS,CAAA;IAIhB,CAAC;IAED;;OAEG;IACH,CAAC,sBAAc,CAAC;QACd,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;CACF;AAbD,0BAaC;AAaD;;GAEG;AACH,SAAS,YAAY,CAAM,EAAsB;IAC/C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAa,CAAA;IAElC,OAAO,CAAC,GAAW,EAAK,EAAE;QACxB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACnB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;SACxB;QAED,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAA;IACxB,CAAC,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAE,OAAgB,EAAE;IAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,gBAAQ,EAAE,IAAI,CAAC,CAAA;IACjD,MAAM,iBAAiB,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA,CAAC,sBAAsB;IAE1E,MAAM,iBAAiB,GAAG;QACxB,IAAI;QACJ,KAAK;QACL,KAAK;QACL,GAAG,CAAC,OAAO,CAAC,iBAAiB,IAAI,EAAE,CAAC;KACrC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAEb,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CACvC,OAAO,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,CACrC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAE7B,qDAAqD;IACrD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;IACzB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,CAAC,aAAa,KAAK,IAAI,CAAA;IAC9E,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,IAAI,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC,CAAA;IAC/F,MAAM,EAAE,GAAe,OAAO,CAAC,QAAQ,CAAC,CAAA;IACxC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,SAAS,CAAA;IACtD,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAA;IACpD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,GAAG,CAAC,UAAU,CAAA;IAC1D,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IACjE,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IAChF,MAAM,UAAU,GAAG,CAAC,KAAK,CAAC,CAAA;IAC1B,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAA;IAE7C,MAAM,cAAc,GAA8B;QAChD,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO;QAChC,mBAAmB,EAAE,GAAG,EAAE,CAAC,GAAG;QAC9B,oBAAoB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI;KACrC,CAAA;IAED,yDAAyD;IACzD,gBAAgB,CAAC,OAAO,CAAC;QACvB,WAAW,EAAE,MAAM;QACnB,YAAY,CAAE,IAAY;YACxB,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAA;QACpC,CAAC;KACF,CAAC,CAAA;IAEF,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM;QAC9D,CAAC,CAAC,EAAE,CAAC,oCAAoC;QACzC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAA;IAExB,SAAS,aAAa,CAAE,WAA0C;QAChE,MAAM,cAAc,GAAG,iBAAiB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAA;QACrE,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACpD,OAAO,IAAI,OAAO,CAAC,cAAc,EAAE,eAAe,CAAC,CAAA;IACrD,CAAC;IAED,SAAS,aAAa,CAAE,oBAAsC;QAC5D,MAAM,KAAK,GAAG,aAAa,CAAC,oBAAoB,CAAC,CAAA;QACjD,IAAI,OAAO,CAAC,QAAQ,EAAE;YACpB,mDAAmD;YACnD,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAA;SAC1C;aAAM;YACL,mCAAmC;YACnC,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;IAED,mCAAmC;IACnC,IAAI,oBAAoB,CAAC,MAAM;QAAE,aAAa,CAAC,oBAAoB,CAAC,CAAA;IAEpE,iEAAiE;IACjE,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG;QAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC/C,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAClD,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAEzE;;OAEG;IACH,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC/D,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,KAAK,CAAC,CAAA;IAExB;;OAEG;IACH,IAAI,SAAS,GAAG,UAAU,IAAY,EAAE,QAAgB,EAAE,UAAU,GAAG,CAAC;QACtE,MAAM,MAAM,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE;YACtC,QAAQ;YACR,YAAY;YACZ,eAAe,EAAE,MAAM,CAAC,OAAO;YAC/B,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAA;QAEF,MAAM,cAAc,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;YACzC,iBAAiB,CAAC,MAAM,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;YAC1D,EAAE,CAAA;QAEJ,IAAI,cAAc,CAAC,MAAM;YAAE,aAAa,CAAC,oBAAoB,CAAC,CAAA;QAE9D,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,aAAuB,CAAC,CAAA;IAC5D,CAAC,CAAA;IAED,IAAI,WAAW,GAAG,UAAU,KAAa,EAAE,SAAiB,EAAE,SAAiB;QAC7E,MAAM,IAAI,SAAS,CAAC,wDAAwD,CAAC,CAAA;IAC/E,CAAC,CAAA;IAED,+DAA+D;IAC/D,IAAI,SAAS,EAAE;QACb,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QACrD,MAAM,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAA;QAElE,8CAA8C;QAC9C,MAAM,WAAW,GAA4B;YAC3C,kBAAkB,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;YACrE,gBAAgB,EAAE,CAAC,QAAgB,EAAE,EAAE;gBACrC,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBACtD,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAA;YACxD,CAAC;YACD,iBAAiB,CAAE,QAAgB;gBACjC,IAAI,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;gBAErD,8CAA8C;gBAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE;oBAC1B,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;oBACnC,IAAI,QAAQ,KAAK,SAAS;wBAAE,OAAM;oBAElC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;oBACzC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;iBACjD;gBAED,OAAO,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;YAC/C,CAAC;YACD,QAAQ,EAAE,cAAc;YACxB,aAAa,EAAE,YAAY,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YAC3E,cAAc,EAAE,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC9E,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC3D,eAAe,EAAE,YAAY,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACjF,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO;YAChC,yBAAyB,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,yBAAyB;YACjE,mBAAmB,EAAE,GAAG,EAAE,CAAC,GAAG;YAC9B,sBAAsB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO;YAC5C,qBAAqB,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC;YACrE,qBAAqB,EAAE,GAAG,EAAE,CAAC,YAAY;SAC1C,CAAA;QAED,MAAM,QAAQ,GAAG,EAAE,CAAC,sBAAsB,CAAC,EAAE,CAAC,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAA;QACjF,MAAM,OAAO,GAAG,EAAE,CAAC,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAE/D,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,UAAU,QAAgB,EAAE,QAAgB;YACpE,MAAM,WAAW,GAAG,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAE/D,qDAAqD;YACrD,IAAI,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,QAAQ;gBAAE,OAAM;YAE/D,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,GAAG,CAAC,CAAC,CAAA;YACvD,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAClD,CAAC,CAAA;QAED,SAAS,GAAG,UAAU,IAAY,EAAE,QAAgB,EAAE,aAAqB,CAAC;YAC1E,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YAEjC,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;YAE9C,iFAAiF;YACjF,MAAM,WAAW,GAAG,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC;iBACzD,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAA;YAEpD,MAAM,cAAc,GAAG,iBAAiB,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAA;YAExE,IAAI,cAAc,CAAC,MAAM;gBAAE,aAAa,CAAC,cAAc,CAAC,CAAA;YAExD,IAAI,MAAM,CAAC,WAAW,EAAE;gBACtB,MAAM,IAAI,SAAS,CAAC,GAAG,eAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAA;aAChE;YAED,+CAA+C;YAC/C,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnC,MAAM,IAAI,SAAS,CACjB,mCAAmC;oBACnC,kEAAkE;oBAClE,0EAA0E;oBAC1E,yDAAyD;oBACzD,KAAK,eAAQ,CAAC,QAAQ,CAAC,KAAK,CAC7B,CAAA;aACF;YAED,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACjE,CAAC,CAAA;QAED,WAAW,GAAG,UAAU,IAAY,EAAE,QAAgB,EAAE,QAAgB;YACtE,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;YAEjC,MAAM,IAAI,GAAG,OAAO,CAAC,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;YAC/D,MAAM,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YACnE,MAAM,OAAO,GAAG,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAEvE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QAC1B,CAAC,CAAA;KACF;IAED,6CAA6C;IAC7C,SAAS,OAAO,CAAE,IAAY,EAAE,QAAgB,EAAE,UAAmB;QACnE,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;QAChE,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,CAAC,CAAA;QACrE,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QACjC,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,EAAE,CAAA;IAExE,2BAA2B;IAC3B,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAA;IAEzE,OAAO,QAAQ,CAAA;AACjB,CAAC;AAnND,4BAmNC;AAED;;GAEG;AACH,SAAS,YAAY,CAAE,QAAgB,EAAE,MAAgB;IACvD,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IAE1C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;AAC1C,CAAC;AAED;;;;GAIG;AACH,SAAS,uBAAuB,CAAE,GAAW;IAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,CAAC,sBAAsB;IAC1D,OAAO,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA,CAAC,sBAAsB;IACrD,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA,CAAC,sBAAsB;AACtD,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CACzB,IAAa,EACb,UAAoB,EACpB,MAAgB,EAChB,QAAkB,EAClB,iBAA2D;IAE3D,2BAA2B;IAC3B,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE;QAC5B,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAA;KAC5D;IAED,IAAI,IAAI,CAAC,YAAY,EAAE;QACrB,2BAA2B;QAC3B,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;QAExF,KAAK,MAAM,GAAG,IAAI,mBAAmB;YAAE,uBAAuB,CAAC,GAAG,CAAC,CAAA;KACpE;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,GAAW,EACX,MAAgB,EAChB,QAAkB,EAClB,eAAyD;IAEzD,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,eAAe,CAAA,CAAC,sBAAsB;IAE7E,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,UAAU,CAAM,EAAE,QAAQ;QAClD,IAAI,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE;YAClC,OAAO,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;SACxB;QAED,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAA;QAE3B,CAAC,CAAC,QAAQ,GAAG,UAAU,IAAY,EAAE,QAAgB;YACnD,KAAK,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAA;YAElC,OAAO,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAA;QACxE,CAAC,CAAA;QAED,OAAO,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;IACzB,CAAC,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,SAAS,CAAE,EAAY,EAAE,MAA6B;IAC7D,sDAAsD;IACtD,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAA;IACzB,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAA;IAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAA;IAC/B,OAAO,MAAM,CAAC,OAAO,CAAC,cAAc,CAAA;IACpC,OAAO,MAAM,CAAC,OAAO,CAAC,cAAc,CAAA;IACpC,OAAO,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAA;IACzC,OAAO,MAAM,CAAC,OAAO,CAAC,eAAe,CAAA;IACrC,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,CAAA;IAEjC,iDAAiD;IACjD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE;QACvC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,GAAG,CAAA;KAC5C;IAED,qGAAqG;IACrG,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE;QACvC,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAA;KAC/C;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CACjB,GAAW,EACX,EAAY,EACZ,UAAqC,EACrC,QAA8C,EAC9C,OAAgB;IAEhB,IAAI,MAAM,GAAQ,EAAE,eAAe,EAAE,EAAE,EAAE,CAAA;IACzC,IAAI,QAAQ,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;IACpC,IAAI,cAAc,GAAuB,SAAS,CAAA;IAElD,6CAA6C;IAC7C,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;QACxB,cAAc,GAAG,OAAO,CAAC,OAAO;YAC9B,CAAC,CAAC,gBAAgB,CAAC,cAAO,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;YACjD,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,CAAA;QAExD,IAAI,cAAc,EAAE;YAClB,MAAM,MAAM,GAAG,EAAE,CAAC,cAAc,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAA;YAE1D,sBAAsB;YACtB,IAAI,MAAM,CAAC,KAAK,EAAE;gBAChB,OAAO,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;aAC9D;YAED,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;YACtB,QAAQ,GAAG,gBAAgB,CAAC,cAAO,CAAC,cAAc,CAAC,CAAC,CAAA;SACrD;KACF;IAED,gCAAgC;IAChC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;QAClB,MAAM,CAAC,KAAK,GAAG,EAAE,CAAA;QACjB,MAAM,CAAC,OAAO,GAAG,EAAE,CAAA;KACpB;IAED,6DAA6D;IAC7D,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAA;IAErH,OAAO,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,0BAA0B,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,CAAA;AAC1G,CAAC;AAOD;;GAEG;AACH,SAAS,YAAY,CAAE,UAAkB,EAAE,QAAgB,EAAE,SAAiB,EAAE,YAA0C;IACxH,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAC9F,MAAM,gBAAgB,GAAG,8CAA8C,SAAS,EAAE,CAAA;IAClF,MAAM,eAAe,GAAG,GAAG,eAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,cAAO,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;IAEvH,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,eAAe,CAAC,GAAG,gBAAgB,CAAA;AACjE,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAE,aAAqB,EAAE,QAAgB;IAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;IAC3C,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAA;IACzB,SAAS,CAAC,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAA;IAC9B,OAAO,SAAS,CAAC,UAAU,CAAA;IAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;AAClC,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAE,WAA6B,EAAE,MAAgB;IACzE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAC/D,CAAC","sourcesContent":["import { relative, basename, extname, resolve, dirname, join } from 'path'\nimport sourceMapSupport = require('source-map-support')\nimport yn from 'yn'\nimport { BaseError } from 'make-error'\nimport * as util from 'util'\nimport * as _ts from 'typescript'\n\n/**\n * @internal\n */\nexport const INSPECT_CUSTOM = util.inspect.custom || 'inspect'\n\n/**\n * Debugging `ts-node`.\n */\nconst shouldDebug = yn(process.env.TS_NODE_DEBUG)\nconst debug = shouldDebug ? console.log.bind(console, 'ts-node') : () => undefined\nconst debugFn = shouldDebug ?\n <T, U> (key: string, fn: (arg: T) => U) => {\n let i = 0\n return (x: T) => {\n debug(key, x, ++i)\n return fn(x)\n }\n } :\n <T, U> (_: string, fn: (arg: T) => U) => fn\n\n/**\n * Common TypeScript interfaces between versions.\n */\nexport interface TSCommon {\n version: typeof _ts.version\n sys: typeof _ts.sys\n ScriptSnapshot: typeof _ts.ScriptSnapshot\n displayPartsToString: typeof _ts.displayPartsToString\n createLanguageService: typeof _ts.createLanguageService\n getDefaultLibFilePath: typeof _ts.getDefaultLibFilePath\n getPreEmitDiagnostics: typeof _ts.getPreEmitDiagnostics\n flattenDiagnosticMessageText: typeof _ts.flattenDiagnosticMessageText\n transpileModule: typeof _ts.transpileModule\n ModuleKind: typeof _ts.ModuleKind\n ScriptTarget: typeof _ts.ScriptTarget\n findConfigFile: typeof _ts.findConfigFile\n readConfigFile: typeof _ts.readConfigFile\n parseJsonConfigFileContent: typeof _ts.parseJsonConfigFileContent\n formatDiagnostics: typeof _ts.formatDiagnostics\n formatDiagnosticsWithColorAndContext: typeof _ts.formatDiagnosticsWithColorAndContext\n}\n\n/**\n * Export the current version.\n */\nexport const VERSION = require('../package.json').version\n\n/**\n * Registration options.\n */\nexport interface Options {\n pretty?: boolean | null\n typeCheck?: boolean | null\n transpileOnly?: boolean | null\n logError?: boolean | null\n files?: boolean | null\n compiler?: string\n ignore?: string[]\n project?: string\n skipIgnore?: boolean | null\n skipProject?: boolean | null\n preferTsExts?: boolean | null\n compilerOptions?: object\n ignoreDiagnostics?: Array<number | string>\n readFile?: (path: string) => string | undefined\n fileExists?: (path: string) => boolean\n transformers?: _ts.CustomTransformers\n}\n\n/**\n * Track the project information.\n */\nclass MemoryCache {\n fileContents = new Map<string, string>()\n fileVersions = new Map<string, number>()\n\n constructor (rootFileNames: string[] = []) {\n for (const fileName of rootFileNames) this.fileVersions.set(fileName, 1)\n }\n}\n\n/**\n * Information retrieved from type info check.\n */\nexport interface TypeInfo {\n name: string\n comment: string\n}\n\n/**\n * Default register options.\n */\nexport const DEFAULTS: Options = {\n files: yn(process.env['TS_NODE_FILES']),\n pretty: yn(process.env['TS_NODE_PRETTY']),\n compiler: process.env['TS_NODE_COMPILER'],\n compilerOptions: parse(process.env['TS_NODE_COMPILER_OPTIONS']),\n ignore: split(process.env['TS_NODE_IGNORE']),\n project: process.env['TS_NODE_PROJECT'],\n skipIgnore: yn(process.env['TS_NODE_SKIP_IGNORE']),\n skipProject: yn(process.env['TS_NODE_SKIP_PROJECT']),\n preferTsExts: yn(process.env['TS_NODE_PREFER_TS_EXTS']),\n ignoreDiagnostics: split(process.env['TS_NODE_IGNORE_DIAGNOSTICS']),\n typeCheck: yn(process.env['TS_NODE_TYPE_CHECK']),\n transpileOnly: yn(process.env['TS_NODE_TRANSPILE_ONLY']),\n logError: yn(process.env['TS_NODE_LOG_ERROR'])\n}\n\n/**\n * Default TypeScript compiler options required by `ts-node`.\n */\nconst TS_NODE_COMPILER_OPTIONS = {\n sourceMap: true,\n inlineSourceMap: false,\n inlineSources: true,\n declaration: false,\n noEmit: false,\n outDir: '$$ts-node$$'\n}\n\n/**\n * Split a string array of values.\n */\nexport function split (value: string | undefined) {\n return typeof value === 'string' ? value.split(/ *, */g) : undefined\n}\n\n/**\n * Parse a string as JSON.\n */\nexport function parse (value: string | undefined): object | undefined {\n return typeof value === 'string' ? JSON.parse(value) : undefined\n}\n\n/**\n * Replace backslashes with forward slashes.\n */\nexport function normalizeSlashes (value: string): string {\n return value.replace(/\\\\/g, '/')\n}\n\n/**\n * TypeScript diagnostics error.\n */\nexport class TSError extends BaseError {\n name = 'TSError'\n\n constructor (public diagnosticText: string, public diagnosticCodes: number[]) {\n super(` Unable to compile TypeScript:\\n${diagnosticText}`)\n }\n\n /**\n * @internal\n */\n [INSPECT_CUSTOM] () {\n return this.diagnosticText\n }\n}\n\n/**\n * Return type for registering `ts-node`.\n */\nexport interface Register {\n cwd: string\n extensions: string[]\n ts: TSCommon\n compile (code: string, fileName: string, lineOffset?: number): string\n getTypeInfo (code: string, fileName: string, position: number): TypeInfo\n}\n\n/**\n * Cached fs operation wrapper.\n */\nfunction cachedLookup <T> (fn: (arg: string) => T): (arg: string) => T {\n const cache = new Map<string, T>()\n\n return (arg: string): T => {\n if (!cache.has(arg)) {\n cache.set(arg, fn(arg))\n }\n\n return cache.get(arg)!\n }\n}\n\n/**\n * Register TypeScript compiler.\n */\nexport function register (opts: Options = {}): Register {\n const options = Object.assign({}, DEFAULTS, opts)\n const originalJsHandler = require.extensions['.js'] // tslint:disable-line\n\n const ignoreDiagnostics = [\n 6059, // \"'rootDir' is expected to contain all source files.\"\n 18002, // \"The 'files' list in config file is empty.\"\n 18003, // \"No inputs were found in config file.\"\n ...(options.ignoreDiagnostics || [])\n ].map(Number)\n\n const ignore = options.skipIgnore ? [] : (\n options.ignore || ['/node_modules/']\n ).map(str => new RegExp(str))\n\n // Require the TypeScript compiler and configuration.\n const cwd = process.cwd()\n const typeCheck = options.typeCheck === true || options.transpileOnly !== true\n const compiler = require.resolve(options.compiler || 'typescript', { paths: [cwd, __dirname] })\n const ts: typeof _ts = require(compiler)\n const transformers = options.transformers || undefined\n const readFile = options.readFile || ts.sys.readFile\n const fileExists = options.fileExists || ts.sys.fileExists\n const config = readConfig(cwd, ts, fileExists, readFile, options)\n const configDiagnosticList = filterDiagnostics(config.errors, ignoreDiagnostics)\n const extensions = ['.ts']\n const outputCache = new Map<string, string>()\n\n const diagnosticHost: _ts.FormatDiagnosticsHost = {\n getNewLine: () => ts.sys.newLine,\n getCurrentDirectory: () => cwd,\n getCanonicalFileName: (path) => path\n }\n\n // Install source map support and read from memory cache.\n sourceMapSupport.install({\n environment: 'node',\n retrieveFile (path: string) {\n return outputCache.get(path) || ''\n }\n })\n\n const formatDiagnostics = process.stdout.isTTY || options.pretty\n ? ts.formatDiagnosticsWithColorAndContext\n : ts.formatDiagnostics\n\n function createTSError (diagnostics: ReadonlyArray<_ts.Diagnostic>) {\n const diagnosticText = formatDiagnostics(diagnostics, diagnosticHost)\n const diagnosticCodes = diagnostics.map(x => x.code)\n return new TSError(diagnosticText, diagnosticCodes)\n }\n\n function reportTSError (configDiagnosticList: _ts.Diagnostic[]) {\n const error = createTSError(configDiagnosticList)\n if (options.logError) {\n // Print error in red color and continue execution.\n console.error('\\x1b[31m%s\\x1b[0m', error)\n } else {\n // Throw error and exit the script.\n throw error\n }\n }\n\n // Render the configuration errors.\n if (configDiagnosticList.length) reportTSError(configDiagnosticList)\n\n // Enable additional extensions when JSX or `allowJs` is enabled.\n if (config.options.jsx) extensions.push('.tsx')\n if (config.options.allowJs) extensions.push('.js')\n if (config.options.jsx && config.options.allowJs) extensions.push('.jsx')\n\n /**\n * Get the extension for a transpiled file.\n */\n const getExtension = config.options.jsx === ts.JsxEmit.Preserve ?\n ((path: string) => /\\.[tj]sx$/.test(path) ? '.jsx' : '.js') :\n ((_: string) => '.js')\n\n /**\n * Create the basic required function using transpile mode.\n */\n let getOutput = function (code: string, fileName: string, lineOffset = 0): SourceOutput {\n const result = ts.transpileModule(code, {\n fileName,\n transformers,\n compilerOptions: config.options,\n reportDiagnostics: true\n })\n\n const diagnosticList = result.diagnostics ?\n filterDiagnostics(result.diagnostics, ignoreDiagnostics) :\n []\n\n if (diagnosticList.length) reportTSError(configDiagnosticList)\n\n return [result.outputText, result.sourceMapText as string]\n }\n\n let getTypeInfo = function (_code: string, _fileName: string, _position: number): TypeInfo {\n throw new TypeError(`Type information is unavailable without \"--type-check\"`)\n }\n\n // Use full language services when the fast option is disabled.\n if (typeCheck) {\n const memoryCache = new MemoryCache(config.fileNames)\n const cachedReadFile = cachedLookup(debugFn('readFile', readFile))\n\n // Create the compiler host for type checking.\n const serviceHost: _ts.LanguageServiceHost = {\n getScriptFileNames: () => Array.from(memoryCache.fileVersions.keys()),\n getScriptVersion: (fileName: string) => {\n const version = memoryCache.fileVersions.get(fileName)\n return version === undefined ? '' : version.toString()\n },\n getScriptSnapshot (fileName: string) {\n let contents = memoryCache.fileContents.get(fileName)\n\n // Read contents into TypeScript memory cache.\n if (contents === undefined) {\n contents = cachedReadFile(fileName)\n if (contents === undefined) return\n\n memoryCache.fileVersions.set(fileName, 1)\n memoryCache.fileContents.set(fileName, contents)\n }\n\n return ts.ScriptSnapshot.fromString(contents)\n },\n readFile: cachedReadFile,\n readDirectory: cachedLookup(debugFn('readDirectory', ts.sys.readDirectory)),\n getDirectories: cachedLookup(debugFn('getDirectories', ts.sys.getDirectories)),\n fileExists: cachedLookup(debugFn('fileExists', fileExists)),\n directoryExists: cachedLookup(debugFn('directoryExists', ts.sys.directoryExists)),\n getNewLine: () => ts.sys.newLine,\n useCaseSensitiveFileNames: () => ts.sys.useCaseSensitiveFileNames,\n getCurrentDirectory: () => cwd,\n getCompilationSettings: () => config.options,\n getDefaultLibFileName: () => ts.getDefaultLibFilePath(config.options),\n getCustomTransformers: () => transformers\n }\n\n const registry = ts.createDocumentRegistry(ts.sys.useCaseSensitiveFileNames, cwd)\n const service = ts.createLanguageService(serviceHost, registry)\n\n // Set the file contents into cache manually.\n const updateMemoryCache = function (contents: string, fileName: string) {\n const fileVersion = memoryCache.fileVersions.get(fileName) || 0\n\n // Avoid incrementing cache when nothing has changed.\n if (memoryCache.fileContents.get(fileName) === contents) return\n\n memoryCache.fileVersions.set(fileName, fileVersion + 1)\n memoryCache.fileContents.set(fileName, contents)\n }\n\n getOutput = function (code: string, fileName: string, lineOffset: number = 0) {\n updateMemoryCache(code, fileName)\n\n const output = service.getEmitOutput(fileName)\n\n // Get the relevant diagnostics - this is 3x faster than `getPreEmitDiagnostics`.\n const diagnostics = service.getSemanticDiagnostics(fileName)\n .concat(service.getSyntacticDiagnostics(fileName))\n\n const diagnosticList = filterDiagnostics(diagnostics, ignoreDiagnostics)\n\n if (diagnosticList.length) reportTSError(diagnosticList)\n\n if (output.emitSkipped) {\n throw new TypeError(`${relative(cwd, fileName)}: Emit skipped`)\n }\n\n // Throw an error when requiring `.d.ts` files.\n if (output.outputFiles.length === 0) {\n throw new TypeError(\n 'Unable to require `.d.ts` file.\\n' +\n 'This is usually the result of a faulty configuration or import. ' +\n 'Make sure there is a `.js`, `.json` or another executable extension and ' +\n 'loader (attached before `ts-node`) available alongside ' +\n `\\`${basename(fileName)}\\`.`\n )\n }\n\n return [output.outputFiles[1].text, output.outputFiles[0].text]\n }\n\n getTypeInfo = function (code: string, fileName: string, position: number) {\n updateMemoryCache(code, fileName)\n\n const info = service.getQuickInfoAtPosition(fileName, position)\n const name = ts.displayPartsToString(info ? info.displayParts : [])\n const comment = ts.displayPartsToString(info ? info.documentation : [])\n\n return { name, comment }\n }\n }\n\n // Create a simple TypeScript compiler proxy.\n function compile (code: string, fileName: string, lineOffset?: number) {\n const [value, sourceMap] = getOutput(code, fileName, lineOffset)\n const output = updateOutput(value, fileName, sourceMap, getExtension)\n outputCache.set(fileName, output)\n return output\n }\n\n const register: Register = { cwd, compile, getTypeInfo, extensions, ts }\n\n // Register the extensions.\n registerExtensions(opts, extensions, ignore, register, originalJsHandler)\n\n return register\n}\n\n/**\n * Check if the filename should be ignored.\n */\nfunction shouldIgnore (filename: string, ignore: RegExp[]) {\n const relname = normalizeSlashes(filename)\n\n return ignore.some(x => x.test(relname))\n}\n\n/**\n * \"Refreshes\" an extension on `require.extentions`.\n *\n * @param {string} ext\n */\nfunction reorderRequireExtension (ext: string) {\n const old = require.extensions[ext] // tslint:disable-line\n delete require.extensions[ext] // tslint:disable-line\n require.extensions[ext] = old // tslint:disable-line\n}\n\n/**\n * Register the extensions to support when importing files.\n */\nfunction registerExtensions (\n opts: Options,\n extensions: string[],\n ignore: RegExp[],\n register: Register,\n originalJsHandler: (m: NodeModule, filename: string) => any\n) {\n // Register new extensions.\n for (const ext of extensions) {\n registerExtension(ext, ignore, register, originalJsHandler)\n }\n\n if (opts.preferTsExts) {\n // tslint:disable-next-line\n const preferredExtensions = new Set([...extensions, ...Object.keys(require.extensions)])\n\n for (const ext of preferredExtensions) reorderRequireExtension(ext)\n }\n}\n\n/**\n * Register the extension for node.\n */\nfunction registerExtension (\n ext: string,\n ignore: RegExp[],\n register: Register,\n originalHandler: (m: NodeModule, filename: string) => any\n) {\n const old = require.extensions[ext] || originalHandler // tslint:disable-line\n\n require.extensions[ext] = function (m: any, filename) { // tslint:disable-line\n if (shouldIgnore(filename, ignore)) {\n return old(m, filename)\n }\n\n const _compile = m._compile\n\n m._compile = function (code: string, fileName: string) {\n debug('module._compile', fileName)\n\n return _compile.call(this, register.compile(code, fileName), fileName)\n }\n\n return old(m, filename)\n }\n}\n\n/**\n * Do post-processing on config options to support `ts-node`.\n */\nfunction fixConfig (ts: TSCommon, config: _ts.ParsedCommandLine) {\n // Delete options that *should not* be passed through.\n delete config.options.out\n delete config.options.outFile\n delete config.options.composite\n delete config.options.declarationDir\n delete config.options.declarationMap\n delete config.options.emitDeclarationOnly\n delete config.options.tsBuildInfoFile\n delete config.options.incremental\n\n // Target ES5 output by default (instead of ES3).\n if (config.options.target === undefined) {\n config.options.target = ts.ScriptTarget.ES5\n }\n\n // Target CommonJS modules by default (instead of magically switching to ES6 when the target is ES6).\n if (config.options.module === undefined) {\n config.options.module = ts.ModuleKind.CommonJS\n }\n\n return config\n}\n\n/**\n * Load TypeScript configuration.\n */\nfunction readConfig (\n cwd: string,\n ts: TSCommon,\n fileExists: (path: string) => boolean,\n readFile: (path: string) => string | undefined,\n options: Options\n): _ts.ParsedCommandLine {\n let config: any = { compilerOptions: {} }\n let basePath = normalizeSlashes(cwd)\n let configFileName: string | undefined = undefined\n\n // Read project configuration when available.\n if (!options.skipProject) {\n configFileName = options.project\n ? normalizeSlashes(resolve(cwd, options.project))\n : ts.findConfigFile(normalizeSlashes(cwd), fileExists)\n\n if (configFileName) {\n const result = ts.readConfigFile(configFileName, readFile)\n\n // Return diagnostics.\n if (result.error) {\n return { errors: [result.error], fileNames: [], options: {} }\n }\n\n config = result.config\n basePath = normalizeSlashes(dirname(configFileName))\n }\n }\n\n // Remove resolution of \"files\".\n if (!options.files) {\n config.files = []\n config.include = []\n }\n\n // Override default configuration options `ts-node` requires.\n config.compilerOptions = Object.assign({}, config.compilerOptions, options.compilerOptions, TS_NODE_COMPILER_OPTIONS)\n\n return fixConfig(ts, ts.parseJsonConfigFileContent(config, ts.sys, basePath, undefined, configFileName))\n}\n\n/**\n * Internal source output.\n */\ntype SourceOutput = [string, string]\n\n/**\n * Update the output remapping the source map.\n */\nfunction updateOutput (outputText: string, fileName: string, sourceMap: string, getExtension: (fileName: string) => string) {\n const base64Map = Buffer.from(updateSourceMap(sourceMap, fileName), 'utf8').toString('base64')\n const sourceMapContent = `data:application/json;charset=utf-8;base64,${base64Map}`\n const sourceMapLength = `${basename(fileName)}.map`.length + (getExtension(fileName).length - extname(fileName).length)\n\n return outputText.slice(0, -sourceMapLength) + sourceMapContent\n}\n\n/**\n * Update the source map contents for improved output.\n */\nfunction updateSourceMap (sourceMapText: string, fileName: string) {\n const sourceMap = JSON.parse(sourceMapText)\n sourceMap.file = fileName\n sourceMap.sources = [fileName]\n delete sourceMap.sourceRoot\n return JSON.stringify(sourceMap)\n}\n\n/**\n * Filter diagnostics.\n */\nfunction filterDiagnostics (diagnostics: _ts.Diagnostic[], ignore: number[]) {\n return diagnostics.filter(x => ignore.indexOf(x.code) === -1)\n}\n"]}