ts-swc-transform 1.8.4 → 1.8.6

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 (58) hide show
  1. package/dist/cjs/constants.js.map +1 -1
  2. package/dist/cjs/createMatcher.js.map +1 -1
  3. package/dist/cjs/extensions.js.map +1 -1
  4. package/dist/cjs/index.js.map +1 -1
  5. package/dist/cjs/lib/fileURLToPath.js.map +1 -1
  6. package/dist/cjs/lib/lazy.js.map +1 -1
  7. package/dist/cjs/lib/{existsSync.js → packageRoot.js} +9 -9
  8. package/dist/cjs/lib/packageRoot.js.map +1 -0
  9. package/dist/cjs/lib/swcInstallBindings.js.map +1 -1
  10. package/dist/cjs/lib/swcPrepareOptions.js.map +1 -1
  11. package/dist/cjs/lib/which.js +49 -0
  12. package/dist/cjs/lib/which.js.map +1 -0
  13. package/dist/cjs/lib/wrapWorker.js.map +1 -1
  14. package/dist/cjs/lib/wrapWorkerSync.js.map +1 -1
  15. package/dist/cjs/resolveFileSync.js.map +1 -1
  16. package/dist/cjs/toPath.js.map +1 -1
  17. package/dist/cjs/transformDirectory.js.map +1 -1
  18. package/dist/cjs/transformFile.js.map +1 -1
  19. package/dist/cjs/transformSync.js.map +1 -1
  20. package/dist/cjs/transformTypes.js.map +1 -1
  21. package/dist/cjs/workers/transformDirectory.js.map +1 -1
  22. package/dist/cjs/workers/transformFile.js.map +1 -1
  23. package/dist/cjs/workers/transformSync.js.map +1 -1
  24. package/dist/cjs/workers/transformTypes.js +160 -49
  25. package/dist/cjs/workers/transformTypes.js.map +1 -1
  26. package/dist/esm/constants.mjs.map +1 -1
  27. package/dist/esm/createMatcher.mjs.map +1 -1
  28. package/dist/esm/extensions.mjs.map +1 -1
  29. package/dist/esm/index.mjs.map +1 -1
  30. package/dist/esm/lib/fileURLToPath.mjs.map +1 -1
  31. package/dist/esm/lib/lazy.cjs.map +1 -1
  32. package/dist/esm/lib/packageRoot.mjs +10 -0
  33. package/dist/esm/lib/packageRoot.mjs.map +1 -0
  34. package/dist/esm/lib/swcInstallBindings.mjs.map +1 -1
  35. package/dist/esm/lib/swcPrepareOptions.mjs.map +1 -1
  36. package/dist/esm/lib/which.mjs +33 -0
  37. package/dist/esm/lib/which.mjs.map +1 -0
  38. package/dist/esm/lib/wrapWorker.mjs.map +1 -1
  39. package/dist/esm/lib/wrapWorkerSync.mjs.map +1 -1
  40. package/dist/esm/resolveFileSync.mjs.map +1 -1
  41. package/dist/esm/toPath.mjs.map +1 -1
  42. package/dist/esm/transformDirectory.mjs.map +1 -1
  43. package/dist/esm/transformFile.mjs.map +1 -1
  44. package/dist/esm/transformSync.mjs.map +1 -1
  45. package/dist/esm/transformTypes.mjs.map +1 -1
  46. package/dist/esm/types.mjs.map +1 -1
  47. package/dist/esm/workers/transformDirectory.mjs.map +1 -1
  48. package/dist/esm/workers/transformFile.mjs.map +1 -1
  49. package/dist/esm/workers/transformSync.mjs.map +1 -1
  50. package/dist/esm/workers/transformTypes.mjs +157 -47
  51. package/dist/esm/workers/transformTypes.mjs.map +1 -1
  52. package/dist/types/lib/packageRoot.d.ts +1 -0
  53. package/dist/types/lib/which.d.ts +1 -0
  54. package/package.json +7 -5
  55. package/dist/cjs/lib/existsSync.js.map +0 -1
  56. package/dist/esm/lib/existsSync.mjs +0 -10
  57. package/dist/esm/lib/existsSync.mjs.map +0 -1
  58. package/dist/types/lib/existsSync.d.ts +0 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["constants.ts"],"sourcesContent":["export const moduleRegEx = /^[^.\\/]|^\\.[^.\\/]|^\\.\\.[^\\/]/;\nexport const typeFileRegEx = /^[^.]+\\.d\\.[cm]?ts$/;\nexport const SKIPS = ['.DS_Store'];\n"],"names":["SKIPS","moduleRegEx","typeFileRegEx"],"mappings":";;;;;;;;;;;IAEaA,KAAK;eAALA;;IAFAC,WAAW;eAAXA;;IACAC,aAAa;eAAbA;;;AADN,IAAMD,cAAc;AACpB,IAAMC,gBAAgB;AACtB,IAAMF,QAAQ;IAAC;CAAY"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/constants.ts"],"sourcesContent":["export const moduleRegEx = /^[^.\\/]|^\\.[^.\\/]|^\\.\\.[^\\/]/;\nexport const typeFileRegEx = /^[^.]+\\.d\\.[cm]?ts$/;\nexport const SKIPS = ['.DS_Store'];\n"],"names":["SKIPS","moduleRegEx","typeFileRegEx"],"mappings":";;;;;;;;;;;IAEaA,KAAK;eAALA;;IAFAC,WAAW;eAAXA;;IACAC,aAAa;eAAbA;;;AADN,IAAMD,cAAc;AACpB,IAAMC,gBAAgB;AACtB,IAAMF,QAAQ;IAAC;CAAY"}
@@ -1 +1 @@
1
- {"version":3,"sources":["createMatcher.ts"],"sourcesContent":["import minimatch from 'minimatch';\nimport path from 'path-posix';\nimport unixify from 'unixify';\n\n/**\n * @param {{path: string, tsconfig: Object}} tsconfig The path to the loaded TS tsconfig and typescript tsconfig.\n * @returns {(filePath:string) => boolean} The function to test for typescript files being included or excluded\n */\nexport default function createMatcher(tsconfig) {\n if (tsconfig === undefined) throw new Error('createMatcher: missing tsconfig');\n if (tsconfig.path === undefined) throw new Error('createMatcher: expecting tsconfig.path');\n if (tsconfig.config === undefined) throw new Error('createMatcher: expecting tsconfig.config');\n\n const tsconfigPath = path.dirname(unixify(tsconfig.path));\n\n function matchFn(condition) {\n let pattern = unixify(condition);\n if (!path.isAbsolute(pattern) && !pattern.startsWith('*')) pattern = path.join(tsconfigPath, pattern);\n\n return function match(filePath) {\n return filePath.startsWith(pattern) || minimatch(filePath, pattern);\n };\n }\n\n const includes = (tsconfig.config.include || []).map(matchFn);\n const excludes = (tsconfig.config.exclude || []).map(matchFn);\n\n return function matcher(filePath) {\n if (filePath.endsWith('.json')) return false;\n\n filePath = unixify(filePath);\n for (let i = 0; i < excludes.length; ++i) {\n if (excludes[i](filePath)) return false;\n }\n for (let j = 0; j < includes.length; ++j) {\n if (includes[j](filePath)) return true;\n }\n return !includes.length;\n };\n}\n"],"names":["createMatcher","tsconfig","undefined","Error","path","config","tsconfigPath","dirname","unixify","matchFn","condition","pattern","isAbsolute","startsWith","join","match","filePath","minimatch","includes","include","map","excludes","exclude","matcher","endsWith","i","length","j"],"mappings":";;;;+BAIA;;;CAGC,GACD;;;eAAwBA;;;gEARF;gEACL;8DACG;;;;;;AAML,SAASA,cAAcC,QAAQ;IAC5C,IAAIA,aAAaC,WAAW,MAAM,IAAIC,MAAM;IAC5C,IAAIF,SAASG,IAAI,KAAKF,WAAW,MAAM,IAAIC,MAAM;IACjD,IAAIF,SAASI,MAAM,KAAKH,WAAW,MAAM,IAAIC,MAAM;IAEnD,IAAMG,eAAeF,kBAAI,CAACG,OAAO,CAACC,IAAAA,gBAAO,EAACP,SAASG,IAAI;IAEvD,SAASK,QAAQC,SAAS;QACxB,IAAIC,UAAUH,IAAAA,gBAAO,EAACE;QACtB,IAAI,CAACN,kBAAI,CAACQ,UAAU,CAACD,YAAY,CAACA,QAAQE,UAAU,CAAC,MAAMF,UAAUP,kBAAI,CAACU,IAAI,CAACR,cAAcK;QAE7F,OAAO,SAASI,MAAMC,QAAQ;YAC5B,OAAOA,SAASH,UAAU,CAACF,YAAYM,IAAAA,kBAAS,EAACD,UAAUL;QAC7D;IACF;IAEA,IAAMO,WAAW,AAACjB,CAAAA,SAASI,MAAM,CAACc,OAAO,IAAI,EAAE,AAAD,EAAGC,GAAG,CAACX;IACrD,IAAMY,WAAW,AAACpB,CAAAA,SAASI,MAAM,CAACiB,OAAO,IAAI,EAAE,AAAD,EAAGF,GAAG,CAACX;IAErD,OAAO,SAASc,QAAQP,QAAQ;QAC9B,IAAIA,SAASQ,QAAQ,CAAC,UAAU,OAAO;QAEvCR,WAAWR,IAAAA,gBAAO,EAACQ;QACnB,IAAK,IAAIS,IAAI,GAAGA,IAAIJ,SAASK,MAAM,EAAE,EAAED,EAAG;YACxC,IAAIJ,QAAQ,CAACI,EAAE,CAACT,WAAW,OAAO;QACpC;QACA,IAAK,IAAIW,IAAI,GAAGA,IAAIT,SAASQ,MAAM,EAAE,EAAEC,EAAG;YACxC,IAAIT,QAAQ,CAACS,EAAE,CAACX,WAAW,OAAO;QACpC;QACA,OAAO,CAACE,SAASQ,MAAM;IACzB;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/createMatcher.ts"],"sourcesContent":["import minimatch from 'minimatch';\nimport path from 'path-posix';\nimport unixify from 'unixify';\n\n/**\n * @param {{path: string, tsconfig: Object}} tsconfig The path to the loaded TS tsconfig and typescript tsconfig.\n * @returns {(filePath:string) => boolean} The function to test for typescript files being included or excluded\n */\nexport default function createMatcher(tsconfig) {\n if (tsconfig === undefined) throw new Error('createMatcher: missing tsconfig');\n if (tsconfig.path === undefined) throw new Error('createMatcher: expecting tsconfig.path');\n if (tsconfig.config === undefined) throw new Error('createMatcher: expecting tsconfig.config');\n\n const tsconfigPath = path.dirname(unixify(tsconfig.path));\n\n function matchFn(condition) {\n let pattern = unixify(condition);\n if (!path.isAbsolute(pattern) && !pattern.startsWith('*')) pattern = path.join(tsconfigPath, pattern);\n\n return function match(filePath) {\n return filePath.startsWith(pattern) || minimatch(filePath, pattern);\n };\n }\n\n const includes = (tsconfig.config.include || []).map(matchFn);\n const excludes = (tsconfig.config.exclude || []).map(matchFn);\n\n return function matcher(filePath) {\n if (filePath.endsWith('.json')) return false;\n\n filePath = unixify(filePath);\n for (let i = 0; i < excludes.length; ++i) {\n if (excludes[i](filePath)) return false;\n }\n for (let j = 0; j < includes.length; ++j) {\n if (includes[j](filePath)) return true;\n }\n return !includes.length;\n };\n}\n"],"names":["createMatcher","tsconfig","undefined","Error","path","config","tsconfigPath","dirname","unixify","matchFn","condition","pattern","isAbsolute","startsWith","join","match","filePath","minimatch","includes","include","map","excludes","exclude","matcher","endsWith","i","length","j"],"mappings":";;;;+BAIA;;;CAGC,GACD;;;eAAwBA;;;gEARF;gEACL;8DACG;;;;;;AAML,SAASA,cAAcC,QAAQ;IAC5C,IAAIA,aAAaC,WAAW,MAAM,IAAIC,MAAM;IAC5C,IAAIF,SAASG,IAAI,KAAKF,WAAW,MAAM,IAAIC,MAAM;IACjD,IAAIF,SAASI,MAAM,KAAKH,WAAW,MAAM,IAAIC,MAAM;IAEnD,IAAMG,eAAeF,kBAAI,CAACG,OAAO,CAACC,IAAAA,gBAAO,EAACP,SAASG,IAAI;IAEvD,SAASK,QAAQC,SAAS;QACxB,IAAIC,UAAUH,IAAAA,gBAAO,EAACE;QACtB,IAAI,CAACN,kBAAI,CAACQ,UAAU,CAACD,YAAY,CAACA,QAAQE,UAAU,CAAC,MAAMF,UAAUP,kBAAI,CAACU,IAAI,CAACR,cAAcK;QAE7F,OAAO,SAASI,MAAMC,QAAQ;YAC5B,OAAOA,SAASH,UAAU,CAACF,YAAYM,IAAAA,kBAAS,EAACD,UAAUL;QAC7D;IACF;IAEA,IAAMO,WAAW,AAACjB,CAAAA,SAASI,MAAM,CAACc,OAAO,IAAI,EAAE,AAAD,EAAGC,GAAG,CAACX;IACrD,IAAMY,WAAW,AAACpB,CAAAA,SAASI,MAAM,CAACiB,OAAO,IAAI,EAAE,AAAD,EAAGF,GAAG,CAACX;IAErD,OAAO,SAASc,QAAQP,QAAQ;QAC9B,IAAIA,SAASQ,QAAQ,CAAC,UAAU,OAAO;QAEvCR,WAAWR,IAAAA,gBAAO,EAACQ;QACnB,IAAK,IAAIS,IAAI,GAAGA,IAAIJ,SAASK,MAAM,EAAE,EAAED,EAAG;YACxC,IAAIJ,QAAQ,CAACI,EAAE,CAACT,WAAW,OAAO;QACpC;QACA,IAAK,IAAIW,IAAI,GAAGA,IAAIT,SAASQ,MAAM,EAAE,EAAEC,EAAG;YACxC,IAAIT,QAAQ,CAACS,EAAE,CAACX,WAAW,OAAO;QACpC;QACA,OAAO,CAACE,SAASQ,MAAM;IACzB;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["extensions.ts"],"sourcesContent":["export default ['.js', '.jsx', '.cjs', '.mjs', '.ts', '.tsx', '.cts', '.mts', '.es6', '.es'];\n"],"names":[],"mappings":";;;;+BAAA;;;eAAA;;;IAAA,WAAe;IAAC;IAAO;IAAQ;IAAQ;IAAQ;IAAO;IAAQ;IAAQ;IAAQ;IAAQ;CAAM"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/extensions.ts"],"sourcesContent":["export default ['.js', '.jsx', '.cjs', '.mjs', '.ts', '.tsx', '.cts', '.mts', '.es6', '.es'];\n"],"names":[],"mappings":";;;;+BAAA;;;eAAA;;;IAAA,WAAe;IAAC;IAAO;IAAQ;IAAQ;IAAQ;IAAO;IAAQ;IAAQ;IAAQ;IAAQ;CAAM"}
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"sourcesContent":["export type * from './types.js';\nexport { default as createMatcher } from './createMatcher.js';\nexport * as constants from './constants.js';\nexport { default as extensions } from './extensions.js';\nexport { default as resolveFileSync } from './resolveFileSync.js';\nexport { default as toPath } from './toPath.js';\n\nexport { default as transformFile } from './transformFile.js';\nexport { default as transformDirectory } from './transformDirectory.js';\nexport { default as transformSync } from './transformSync.js';\nexport { default as transformTypes } from './transformTypes.js';\n"],"names":["constants","createMatcher","extensions","resolveFileSync","toPath","transformDirectory","transformFile","transformSync","transformTypes"],"mappings":";;;;;;;;;;;IAEYA,SAAS;;;IADDC,aAAa;eAAbA,sBAAa;;IAEbC,UAAU;eAAVA,mBAAU;;IACVC,eAAe;eAAfA,wBAAe;;IACfC,MAAM;eAANA,eAAM;;IAGNC,kBAAkB;eAAlBA,2BAAkB;;IADlBC,aAAa;eAAbA,sBAAa;;IAEbC,aAAa;eAAbA,sBAAa;;IACbC,cAAc;eAAdA,uBAAc;;;oEATO;iEACd;iEACW;sEACK;6DACT;oEAEO;yEACK;oEACL;qEACC"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/index.ts"],"sourcesContent":["export type * from './types.js';\nexport { default as createMatcher } from './createMatcher.js';\nexport * as constants from './constants.js';\nexport { default as extensions } from './extensions.js';\nexport { default as resolveFileSync } from './resolveFileSync.js';\nexport { default as toPath } from './toPath.js';\n\nexport { default as transformFile } from './transformFile.js';\nexport { default as transformDirectory } from './transformDirectory.js';\nexport { default as transformSync } from './transformSync.js';\nexport { default as transformTypes } from './transformTypes.js';\n"],"names":["constants","createMatcher","extensions","resolveFileSync","toPath","transformDirectory","transformFile","transformSync","transformTypes"],"mappings":";;;;;;;;;;;IAEYA,SAAS;;;IADDC,aAAa;eAAbA,sBAAa;;IAEbC,UAAU;eAAVA,mBAAU;;IACVC,eAAe;eAAfA,wBAAe;;IACfC,MAAM;eAANA,eAAM;;IAGNC,kBAAkB;eAAlBA,2BAAkB;;IADlBC,aAAa;eAAbA,sBAAa;;IAEbC,aAAa;eAAbA,sBAAa;;IACbC,cAAc;eAAdA,uBAAc;;;oEATO;iEACd;iEACW;sEACK;6DACT;oEAEO;yEACK;oEACL;qEACC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["fileURLToPath.ts"],"sourcesContent":["import url from 'url';\n\nfunction fileURLToPathPolyfill(fileURL) {\n const path = typeof fileURL === 'string' ? fileURL : fileURL.pathname;\n if (!path.startsWith('file:')) throw new Error('The URL must use the file: protocol');\n return decodeURIComponent(path.substring(7));\n}\n\nexport default url.fileURLToPath || fileURLToPathPolyfill;\n"],"names":["fileURLToPathPolyfill","fileURL","path","pathname","startsWith","Error","decodeURIComponent","substring","url","fileURLToPath"],"mappings":";;;;+BAQA;;;eAAA;;;0DARgB;;;;;;AAEhB,SAASA,sBAAsBC,OAAO;IACpC,IAAMC,OAAO,OAAOD,YAAY,WAAWA,UAAUA,QAAQE,QAAQ;IACrE,IAAI,CAACD,KAAKE,UAAU,CAAC,UAAU,MAAM,IAAIC,MAAM;IAC/C,OAAOC,mBAAmBJ,KAAKK,SAAS,CAAC;AAC3C;IAEA,WAAeC,YAAG,CAACC,aAAa,IAAIT"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/lib/fileURLToPath.ts"],"sourcesContent":["import url from 'url';\n\nfunction fileURLToPathPolyfill(fileURL) {\n const path = typeof fileURL === 'string' ? fileURL : fileURL.pathname;\n if (!path.startsWith('file:')) throw new Error('The URL must use the file: protocol');\n return decodeURIComponent(path.substring(7));\n}\n\nexport default url.fileURLToPath || fileURLToPathPolyfill;\n"],"names":["fileURLToPathPolyfill","fileURL","path","pathname","startsWith","Error","decodeURIComponent","substring","url","fileURLToPath"],"mappings":";;;;+BAQA;;;eAAA;;;0DARgB;;;;;;AAEhB,SAASA,sBAAsBC,OAAO;IACpC,IAAMC,OAAO,OAAOD,YAAY,WAAWA,UAAUA,QAAQE,QAAQ;IACrE,IAAI,CAACD,KAAKE,UAAU,CAAC,UAAU,MAAM,IAAIC,MAAM;IAC/C,OAAOC,mBAAmBJ,KAAKK,SAAS,CAAC;AAC3C;IAEA,WAAeC,YAAG,CAACC,aAAa,IAAIT"}
@@ -1 +1 @@
1
- {"version":3,"sources":["lazy.cts"],"sourcesContent":["module.exports = require('lazy-cache')(require);\n"],"names":["module","exports","require"],"mappings":";AAAAA,OAAOC,OAAO,GAAGC,QAAQ,cAAcA"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/lib/lazy.cts"],"sourcesContent":["module.exports = require('lazy-cache')(require);\n"],"names":["module","exports","require"],"mappings":";AAAAA,OAAOC,OAAO,GAAGC,QAAQ,cAAcA"}
@@ -5,22 +5,22 @@ Object.defineProperty(exports, "__esModule", {
5
5
  Object.defineProperty(exports, "default", {
6
6
  enumerable: true,
7
7
  get: function() {
8
- return _default;
8
+ return packageRoot;
9
9
  }
10
10
  });
11
11
  var _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
12
+ var _path = /*#__PURE__*/ _interop_require_default(require("path"));
13
+ var _fsexistssync = /*#__PURE__*/ _interop_require_default(require("fs-exists-sync"));
12
14
  function _interop_require_default(obj) {
13
15
  return obj && obj.__esModule ? obj : {
14
16
  default: obj
15
17
  };
16
18
  }
17
- function existsSyncPolyfill(path) {
18
- try {
19
- _fs.default.accessSync(path);
20
- return true;
21
- } catch (_) {
22
- return false;
23
- }
19
+ function packageRoot(dir) {
20
+ var packagePath = _path.default.join(dir, 'package.json');
21
+ if ((0, _fsexistssync.default)(packagePath) && JSON.parse(_fs.default.readFileSync(packagePath, 'utf8')).name) return dir;
22
+ var nextDir = _path.default.dirname(dir);
23
+ if (nextDir === dir) throw new Error('Package root not found');
24
+ return packageRoot(nextDir);
24
25
  }
25
- var _default = _fs.default.accessSync ? existsSyncPolyfill : _fs.default.existsSync;
26
26
  /* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/lib/packageRoot.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport existsSync from 'fs-exists-sync';\n\nexport default function packageRoot(dir) {\n const packagePath = path.join(dir, 'package.json');\n if (existsSync(packagePath) && JSON.parse(fs.readFileSync(packagePath, 'utf8')).name) return dir;\n const nextDir = path.dirname(dir);\n if (nextDir === dir) throw new Error('Package root not found');\n return packageRoot(nextDir);\n}\n"],"names":["packageRoot","dir","packagePath","path","join","existsSync","JSON","parse","fs","readFileSync","name","nextDir","dirname","Error"],"mappings":";;;;+BAIA;;;eAAwBA;;;yDAJT;2DACE;mEACM;;;;;;AAER,SAASA,YAAYC,GAAG;IACrC,IAAMC,cAAcC,aAAI,CAACC,IAAI,CAACH,KAAK;IACnC,IAAII,IAAAA,qBAAU,EAACH,gBAAgBI,KAAKC,KAAK,CAACC,WAAE,CAACC,YAAY,CAACP,aAAa,SAASQ,IAAI,EAAE,OAAOT;IAC7F,IAAMU,UAAUR,aAAI,CAACS,OAAO,CAACX;IAC7B,IAAIU,YAAYV,KAAK,MAAM,IAAIY,MAAM;IACrC,OAAOb,YAAYW;AACrB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["swcInstallBindings.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport installModule from 'install-module-linked';\nimport Queue from 'queue-cb';\nimport resolve from 'resolve';\nimport resolveOnce from 'resolve-once-cb';\n\nfunction installSWCBindings(callback) {\n const swcPackagePath = resolve.sync('@swc/core/package.json');\n const swcDir = path.dirname(path.dirname(swcPackagePath));\n const { optionalDependencies } = JSON.parse(fs.readFileSync(swcPackagePath, 'utf8'));\n const depKey = `${process.platform}-${process.arch}`;\n\n const queue = new Queue();\n Object.keys(optionalDependencies)\n .filter((name) => name.indexOf(depKey) >= 0)\n .map((name) => {\n queue.defer((callback) => {\n const version = optionalDependencies[name];\n const installString = `${name}${version ? `@${version}` : ''}`;\n installModule(installString, path.dirname(swcDir), callback);\n });\n });\n queue.await(callback);\n}\n\nexport default resolveOnce(installSWCBindings);\n"],"names":["installSWCBindings","callback","swcPackagePath","resolve","sync","swcDir","path","dirname","optionalDependencies","JSON","parse","fs","readFileSync","depKey","process","platform","arch","queue","Queue","Object","keys","filter","name","indexOf","map","defer","version","installString","installModule","await","resolveOnce"],"mappings":";;;;+BA0BA;;;eAAA;;;yDA1Be;2DACE;0EACS;8DACR;8DACE;oEACI;;;;;;AAExB,SAASA,mBAAmBC,QAAQ;IAClC,IAAMC,iBAAiBC,gBAAO,CAACC,IAAI,CAAC;IACpC,IAAMC,SAASC,aAAI,CAACC,OAAO,CAACD,aAAI,CAACC,OAAO,CAACL;IACzC,IAAM,AAAEM,uBAAyBC,KAAKC,KAAK,CAACC,WAAE,CAACC,YAAY,CAACV,gBAAgB,SAApEM;IACR,IAAMK,SAAS,AAAC,GAAsBC,OAApBA,QAAQC,QAAQ,EAAC,KAAgB,OAAbD,QAAQE,IAAI;IAElD,IAAMC,QAAQ,IAAIC,gBAAK;IACvBC,OAAOC,IAAI,CAACZ,sBACTa,MAAM,CAAC,SAACC;eAASA,KAAKC,OAAO,CAACV,WAAW;OACzCW,GAAG,CAAC,SAACF;QACJL,MAAMQ,KAAK,CAAC,SAACxB;YACX,IAAMyB,UAAUlB,oBAAoB,CAACc,KAAK;YAC1C,IAAMK,gBAAgB,AAAC,GAASD,OAAPJ,MAAoC,OAA7BI,UAAU,AAAC,IAAW,OAARA,WAAY;YAC1DE,IAAAA,4BAAa,EAACD,eAAerB,aAAI,CAACC,OAAO,CAACF,SAASJ;QACrD;IACF;IACFgB,MAAMY,KAAK,CAAC5B;AACd;IAEA,WAAe6B,IAAAA,sBAAW,EAAC9B"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/lib/swcInstallBindings.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport installModule from 'install-module-linked';\nimport Queue from 'queue-cb';\nimport resolve from 'resolve';\nimport resolveOnce from 'resolve-once-cb';\n\nfunction installSWCBindings(callback) {\n const swcPackagePath = resolve.sync('@swc/core/package.json');\n const swcDir = path.dirname(path.dirname(swcPackagePath));\n const { optionalDependencies } = JSON.parse(fs.readFileSync(swcPackagePath, 'utf8'));\n const depKey = `${process.platform}-${process.arch}`;\n\n const queue = new Queue();\n Object.keys(optionalDependencies)\n .filter((name) => name.indexOf(depKey) >= 0)\n .map((name) => {\n queue.defer((callback) => {\n const version = optionalDependencies[name];\n const installString = `${name}${version ? `@${version}` : ''}`;\n installModule(installString, path.dirname(swcDir), callback);\n });\n });\n queue.await(callback);\n}\n\nexport default resolveOnce(installSWCBindings);\n"],"names":["installSWCBindings","callback","swcPackagePath","resolve","sync","swcDir","path","dirname","optionalDependencies","JSON","parse","fs","readFileSync","depKey","process","platform","arch","queue","Queue","Object","keys","filter","name","indexOf","map","defer","version","installString","installModule","await","resolveOnce"],"mappings":";;;;+BA0BA;;;eAAA;;;yDA1Be;2DACE;0EACS;8DACR;8DACE;oEACI;;;;;;AAExB,SAASA,mBAAmBC,QAAQ;IAClC,IAAMC,iBAAiBC,gBAAO,CAACC,IAAI,CAAC;IACpC,IAAMC,SAASC,aAAI,CAACC,OAAO,CAACD,aAAI,CAACC,OAAO,CAACL;IACzC,IAAM,AAAEM,uBAAyBC,KAAKC,KAAK,CAACC,WAAE,CAACC,YAAY,CAACV,gBAAgB,SAApEM;IACR,IAAMK,SAAS,AAAC,GAAsBC,OAApBA,QAAQC,QAAQ,EAAC,KAAgB,OAAbD,QAAQE,IAAI;IAElD,IAAMC,QAAQ,IAAIC,gBAAK;IACvBC,OAAOC,IAAI,CAACZ,sBACTa,MAAM,CAAC,SAACC;eAASA,KAAKC,OAAO,CAACV,WAAW;OACzCW,GAAG,CAAC,SAACF;QACJL,MAAMQ,KAAK,CAAC,SAACxB;YACX,IAAMyB,UAAUlB,oBAAoB,CAACc,KAAK;YAC1C,IAAMK,gBAAgB,AAAC,GAASD,OAAPJ,MAAoC,OAA7BI,UAAU,AAAC,IAAW,OAARA,WAAY;YAC1DE,IAAAA,4BAAa,EAACD,eAAerB,aAAI,CAACC,OAAO,CAACF,SAASJ;QACrD;IACF;IACFgB,MAAMY,KAAK,CAAC5B;AACd;IAEA,WAAe6B,IAAAA,sBAAW,EAAC9B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["swcPrepareOptions.ts"],"sourcesContent":["import path from 'path';\nimport swcInstallBindings from './swcInstallBindings.js';\n\n// @ts-ignore\nimport lazy from './lazy.cjs';\nconst lazyTS = lazy('typescript');\nconst lazySWC = lazy('@swc/core');\nconst lazyTranspiler = lazy('ts-node/transpilers/swc');\n\nimport type { TsConfigResult } from 'get-tsconfig-compat';\n\nexport default function swcPrepareOptions(tsconfig: TsConfigResult, callback) {\n swcInstallBindings((err) => {\n if (err) return callback(err);\n\n try {\n const ts = lazyTS();\n const swc = lazySWC();\n const transpiler = lazyTranspiler();\n const parsed = ts.parseJsonConfigFileContent(tsconfig.config, ts.sys, path.dirname(tsconfig.path));\n callback(null, transpiler.createSwcOptions(parsed.options, undefined, swc, 'swc'));\n } catch (err) {\n callback(err);\n }\n });\n}\n"],"names":["swcPrepareOptions","lazyTS","lazy","lazySWC","lazyTranspiler","tsconfig","callback","swcInstallBindings","err","ts","swc","transpiler","parsed","parseJsonConfigFileContent","config","sys","path","dirname","createSwcOptions","options","undefined"],"mappings":";;;;+BAWA;;;eAAwBA;;;2DAXP;yEACc;8DAGd;;;;;;AACjB,IAAMC,SAASC,IAAAA,gBAAI,EAAC;AACpB,IAAMC,UAAUD,IAAAA,gBAAI,EAAC;AACrB,IAAME,iBAAiBF,IAAAA,gBAAI,EAAC;AAIb,SAASF,kBAAkBK,QAAwB,EAAEC,QAAQ;IAC1EC,IAAAA,2BAAkB,EAAC,SAACC;QAClB,IAAIA,KAAK,OAAOF,SAASE;QAEzB,IAAI;YACF,IAAMC,KAAKR;YACX,IAAMS,MAAMP;YACZ,IAAMQ,aAAaP;YACnB,IAAMQ,SAASH,GAAGI,0BAA0B,CAACR,SAASS,MAAM,EAAEL,GAAGM,GAAG,EAAEC,aAAI,CAACC,OAAO,CAACZ,SAASW,IAAI;YAChGV,SAAS,MAAMK,WAAWO,gBAAgB,CAACN,OAAOO,OAAO,EAAEC,WAAWV,KAAK;QAC7E,EAAE,OAAOF,KAAK;YACZF,SAASE;QACX;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/lib/swcPrepareOptions.ts"],"sourcesContent":["import path from 'path';\nimport swcInstallBindings from './swcInstallBindings.js';\n\n// @ts-ignore\nimport lazy from './lazy.cjs';\nconst lazyTS = lazy('typescript');\nconst lazySWC = lazy('@swc/core');\nconst lazyTranspiler = lazy('ts-node/transpilers/swc');\n\nimport type { TsConfigResult } from 'get-tsconfig-compat';\n\nexport default function swcPrepareOptions(tsconfig: TsConfigResult, callback) {\n swcInstallBindings((err) => {\n if (err) return callback(err);\n\n try {\n const ts = lazyTS();\n const swc = lazySWC();\n const transpiler = lazyTranspiler();\n const parsed = ts.parseJsonConfigFileContent(tsconfig.config, ts.sys, path.dirname(tsconfig.path));\n callback(null, transpiler.createSwcOptions(parsed.options, undefined, swc, 'swc'));\n } catch (err) {\n callback(err);\n }\n });\n}\n"],"names":["swcPrepareOptions","lazyTS","lazy","lazySWC","lazyTranspiler","tsconfig","callback","swcInstallBindings","err","ts","swc","transpiler","parsed","parseJsonConfigFileContent","config","sys","path","dirname","createSwcOptions","options","undefined"],"mappings":";;;;+BAWA;;;eAAwBA;;;2DAXP;yEACc;8DAGd;;;;;;AACjB,IAAMC,SAASC,IAAAA,gBAAI,EAAC;AACpB,IAAMC,UAAUD,IAAAA,gBAAI,EAAC;AACrB,IAAME,iBAAiBF,IAAAA,gBAAI,EAAC;AAIb,SAASF,kBAAkBK,QAAwB,EAAEC,QAAQ;IAC1EC,IAAAA,2BAAkB,EAAC,SAACC;QAClB,IAAIA,KAAK,OAAOF,SAASE;QAEzB,IAAI;YACF,IAAMC,KAAKR;YACX,IAAMS,MAAMP;YACZ,IAAMQ,aAAaP;YACnB,IAAMQ,SAASH,GAAGI,0BAA0B,CAACR,SAASS,MAAM,EAAEL,GAAGM,GAAG,EAAEC,aAAI,CAACC,OAAO,CAACZ,SAASW,IAAI;YAChGV,SAAS,MAAMK,WAAWO,gBAAgB,CAACN,OAAOO,OAAO,EAAEC,WAAWV,KAAK;QAC7E,EAAE,OAAOF,KAAK;YACZF,SAASE;QACX;IACF;AACF"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return whichCompat;
9
+ }
10
+ });
11
+ var _path = /*#__PURE__*/ _interop_require_default(require("path"));
12
+ var _url = /*#__PURE__*/ _interop_require_default(require("url"));
13
+ var _envpathkey = /*#__PURE__*/ _interop_require_default(require("env-path-key"));
14
+ var _pathstringprepend = /*#__PURE__*/ _interop_require_default(require("path-string-prepend"));
15
+ var _which = /*#__PURE__*/ _interop_require_default(require("which"));
16
+ var _packageRoot = /*#__PURE__*/ _interop_require_default(require("./packageRoot.js"));
17
+ function _interop_require_default(obj) {
18
+ return obj && obj.__esModule ? obj : {
19
+ default: obj
20
+ };
21
+ }
22
+ var __dirname = _path.default.dirname(typeof __filename !== 'undefined' ? __filename : _url.default.fileURLToPath(require("url").pathToFileURL(__filename).toString()));
23
+ var root = (0, _packageRoot.default)(__dirname);
24
+ var isWindows = process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env.OSTYPE);
25
+ var NODES = [
26
+ 'node',
27
+ 'node.exe',
28
+ 'node.cmd'
29
+ ];
30
+ function whichCompat(command, options, callback) {
31
+ var cwd = options.cwd || process.cwd();
32
+ var env = options.env || process.env;
33
+ var pathKey = (0, _envpathkey.default)(env) || '';
34
+ var envPath = env[pathKey] || '';
35
+ envPath = (0, _pathstringprepend.default)(envPath, _path.default.resolve(cwd, 'node_modules', '.bin'));
36
+ envPath = (0, _pathstringprepend.default)(envPath, _path.default.resolve(root, '..', '.bin'));
37
+ if (NODES.indexOf(_path.default.basename(command).toLowerCase()) >= 0) {
38
+ if (env.NODE || env.npm_node_execpath) return callback(null, env.NODE || env.npm_node_execpath);
39
+ }
40
+ // look up the full path
41
+ (0, _which.default)(command, {
42
+ path: envPath
43
+ }, function(err, found) {
44
+ if (err) return callback(err);
45
+ if (isWindows && found.slice(-4).toLowerCase() === '.cmd') found = found.slice(0, -4);
46
+ callback(null, found);
47
+ });
48
+ }
49
+ /* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/lib/which.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\nimport envPathKey from 'env-path-key';\nimport prepend from 'path-string-prepend';\nimport which from 'which';\nimport packageRoot from './packageRoot.js';\n\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst root = packageRoot(__dirname);\n\nconst isWindows = process.platform === 'win32' || /^(msys|cygwin)$/.test(process.env.OSTYPE);\nconst NODES = ['node', 'node.exe', 'node.cmd'];\n\nexport default function whichCompat(command, options, callback) {\n const cwd = options.cwd || process.cwd();\n const env = options.env || process.env;\n const pathKey = envPathKey(env) || '';\n let envPath = env[pathKey] || '';\n envPath = prepend(envPath, path.resolve(cwd, 'node_modules', '.bin'));\n envPath = prepend(envPath, path.resolve(root, '..', '.bin'));\n\n if (NODES.indexOf(path.basename(command).toLowerCase()) >= 0) {\n if (env.NODE || env.npm_node_execpath) return callback(null, env.NODE || env.npm_node_execpath);\n }\n\n // look up the full path\n which(command, { path: envPath }, (err, found) => {\n if (err) return callback(err);\n if (isWindows && found.slice(-4).toLowerCase() === '.cmd') found = found.slice(0, -4);\n callback(null, found);\n });\n}\n"],"names":["whichCompat","__dirname","path","dirname","__filename","url","fileURLToPath","root","packageRoot","isWindows","process","platform","test","env","OSTYPE","NODES","command","options","callback","cwd","pathKey","envPathKey","envPath","prepend","resolve","indexOf","basename","toLowerCase","NODE","npm_node_execpath","which","err","found","slice"],"mappings":";;;;+BAaA;;;eAAwBA;;;2DAbP;0DACD;iEACO;wEACH;4DACF;kEACM;;;;;;AAExB,IAAMC,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,OAAOC,IAAAA,oBAAW,EAACP;AAEzB,IAAMQ,YAAYC,QAAQC,QAAQ,KAAK,WAAW,kBAAkBC,IAAI,CAACF,QAAQG,GAAG,CAACC,MAAM;AAC3F,IAAMC,QAAQ;IAAC;IAAQ;IAAY;CAAW;AAE/B,SAASf,YAAYgB,OAAO,EAAEC,OAAO,EAAEC,QAAQ;IAC5D,IAAMC,MAAMF,QAAQE,GAAG,IAAIT,QAAQS,GAAG;IACtC,IAAMN,MAAMI,QAAQJ,GAAG,IAAIH,QAAQG,GAAG;IACtC,IAAMO,UAAUC,IAAAA,mBAAU,EAACR,QAAQ;IACnC,IAAIS,UAAUT,GAAG,CAACO,QAAQ,IAAI;IAC9BE,UAAUC,IAAAA,0BAAO,EAACD,SAASpB,aAAI,CAACsB,OAAO,CAACL,KAAK,gBAAgB;IAC7DG,UAAUC,IAAAA,0BAAO,EAACD,SAASpB,aAAI,CAACsB,OAAO,CAACjB,MAAM,MAAM;IAEpD,IAAIQ,MAAMU,OAAO,CAACvB,aAAI,CAACwB,QAAQ,CAACV,SAASW,WAAW,OAAO,GAAG;QAC5D,IAAId,IAAIe,IAAI,IAAIf,IAAIgB,iBAAiB,EAAE,OAAOX,SAAS,MAAML,IAAIe,IAAI,IAAIf,IAAIgB,iBAAiB;IAChG;IAEA,wBAAwB;IACxBC,IAAAA,cAAK,EAACd,SAAS;QAAEd,MAAMoB;IAAQ,GAAG,SAACS,KAAKC;QACtC,IAAID,KAAK,OAAOb,SAASa;QACzB,IAAItB,aAAauB,MAAMC,KAAK,CAAC,CAAC,GAAGN,WAAW,OAAO,QAAQK,QAAQA,MAAMC,KAAK,CAAC,GAAG,CAAC;QACnFf,SAAS,MAAMc;IACjB;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["wrapWorker.ts"],"sourcesContent":["// @ts-ignore\nimport lazy from './lazy.cjs';\nconst call = lazy('node-version-call');\n\nexport default function wrapWorker(workerPath: string) {\n return function workerWrapper(version, ...args) {\n if (version === 'local') return lazy(workerPath)().apply(null, args);\n\n const callback = args.pop();\n try {\n callback(null, call()({ version, callbacks: true }, workerPath, ...args));\n } catch (err) {\n callback(err);\n }\n };\n}\n"],"names":["wrapWorker","call","lazy","workerPath","workerWrapper","version","args","apply","callback","pop","callbacks","err"],"mappings":"AAAA,aAAa;;;;;+BAIb;;;eAAwBA;;;8DAHP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACjB,IAAMC,OAAOC,IAAAA,gBAAI,EAAC;AAEH,SAASF,WAAWG,UAAkB;IACnD,OAAO,SAASC,cAAcC,OAAO;QAAE,IAAA,IAAA,OAAA,UAAA,QAAA,AAAGC,OAAH,UAAA,OAAA,IAAA,OAAA,QAAA,OAAA,GAAA,OAAA,MAAA;YAAGA,KAAH,OAAA,KAAA,SAAA,CAAA,KAAO;;QAC5C,IAAID,YAAY,SAAS,OAAOH,IAAAA,gBAAI,EAACC,cAAcI,KAAK,CAAC,MAAMD;QAE/D,IAAME,WAAWF,KAAKG,GAAG;QACzB,IAAI;YACFD,SAAS,MAAMP,aAAAA,IAAM,EAANA;gBAAO;oBAAEI,SAAAA;oBAASK,WAAW;gBAAK;gBAAGP;aAAoB,CAAzDF,OAAiD,qBAAGK;QACrE,EAAE,OAAOK,KAAK;YACZH,SAASG;QACX;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/lib/wrapWorker.ts"],"sourcesContent":["// @ts-ignore\nimport lazy from './lazy.cjs';\nconst call = lazy('node-version-call');\n\nexport default function wrapWorker(workerPath: string) {\n return function workerWrapper(version, ...args) {\n if (version === 'local') return lazy(workerPath)().apply(null, args);\n\n const callback = args.pop();\n try {\n callback(null, call()({ version, callbacks: true }, workerPath, ...args));\n } catch (err) {\n callback(err);\n }\n };\n}\n"],"names":["wrapWorker","call","lazy","workerPath","workerWrapper","version","args","apply","callback","pop","callbacks","err"],"mappings":"AAAA,aAAa;;;;;+BAIb;;;eAAwBA;;;8DAHP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACjB,IAAMC,OAAOC,IAAAA,gBAAI,EAAC;AAEH,SAASF,WAAWG,UAAkB;IACnD,OAAO,SAASC,cAAcC,OAAO;QAAE,IAAA,IAAA,OAAA,UAAA,QAAA,AAAGC,OAAH,UAAA,OAAA,IAAA,OAAA,QAAA,OAAA,GAAA,OAAA,MAAA;YAAGA,KAAH,OAAA,KAAA,SAAA,CAAA,KAAO;;QAC5C,IAAID,YAAY,SAAS,OAAOH,IAAAA,gBAAI,EAACC,cAAcI,KAAK,CAAC,MAAMD;QAE/D,IAAME,WAAWF,KAAKG,GAAG;QACzB,IAAI;YACFD,SAAS,MAAMP,aAAAA,IAAM,EAANA;gBAAO;oBAAEI,SAAAA;oBAASK,WAAW;gBAAK;gBAAGP;aAAoB,CAAzDF,OAAiD,qBAAGK;QACrE,EAAE,OAAOK,KAAK;YACZH,SAASG;QACX;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["wrapWorkerSync.ts"],"sourcesContent":["// @ts-ignore\nimport lazy from './lazy.cjs';\nconst call = lazy('node-version-call');\n\nexport default function wrapWorkerSync(workerPath: string) {\n return function workerWrapperSync(version, ...args) {\n if (version === 'local') return lazy(workerPath)().apply(null, args);\n return call()({ version, callbacks: true }, workerPath, ...args);\n };\n}\n"],"names":["wrapWorkerSync","call","lazy","workerPath","workerWrapperSync","version","args","apply","callbacks"],"mappings":"AAAA,aAAa;;;;;+BAIb;;;eAAwBA;;;8DAHP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACjB,IAAMC,OAAOC,IAAAA,gBAAI,EAAC;AAEH,SAASF,eAAeG,UAAkB;IACvD,OAAO,SAASC,kBAAkBC,OAAO;QAAE,IAAA,IAAA,OAAA,UAAA,QAAA,AAAGC,OAAH,UAAA,OAAA,IAAA,OAAA,QAAA,OAAA,GAAA,OAAA,MAAA;YAAGA,KAAH,OAAA,KAAA,SAAA,CAAA,KAAO;;QAChD,IAAID,YAAY,SAAS,OAAOH,IAAAA,gBAAI,EAACC,cAAcI,KAAK,CAAC,MAAMD;QAC/D,OAAOL,aAAAA,IAAM,EAANA;YAAO;gBAAEI,SAAAA;gBAASG,WAAW;YAAK;YAAGL;SAAoB,CAAzDF,OAAiD,qBAAGK;IAC7D;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/lib/wrapWorkerSync.ts"],"sourcesContent":["// @ts-ignore\nimport lazy from './lazy.cjs';\nconst call = lazy('node-version-call');\n\nexport default function wrapWorkerSync(workerPath: string) {\n return function workerWrapperSync(version, ...args) {\n if (version === 'local') return lazy(workerPath)().apply(null, args);\n return call()({ version, callbacks: true }, workerPath, ...args);\n };\n}\n"],"names":["wrapWorkerSync","call","lazy","workerPath","workerWrapperSync","version","args","apply","callbacks"],"mappings":"AAAA,aAAa;;;;;+BAIb;;;eAAwBA;;;8DAHP;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACjB,IAAMC,OAAOC,IAAAA,gBAAI,EAAC;AAEH,SAASF,eAAeG,UAAkB;IACvD,OAAO,SAASC,kBAAkBC,OAAO;QAAE,IAAA,IAAA,OAAA,UAAA,QAAA,AAAGC,OAAH,UAAA,OAAA,IAAA,OAAA,QAAA,OAAA,GAAA,OAAA,MAAA;YAAGA,KAAH,OAAA,KAAA,SAAA,CAAA,KAAO;;QAChD,IAAID,YAAY,SAAS,OAAOH,IAAAA,gBAAI,EAACC,cAAcI,KAAK,CAAC,MAAMD;QAC/D,OAAOL,aAAAA,IAAM,EAANA;YAAO;gBAAEI,SAAAA;gBAASG,WAAW;YAAK;YAAGL;SAAoB,CAAzDF,OAAiD,qBAAGK;IAC7D;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["resolveFileSync.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport { moduleRegEx, typeFileRegEx } from './constants.js';\nimport extensions from './extensions.js';\nimport toPath from './toPath.js';\nimport type { Context } from './types.js';\n\nconst indexExtensions = extensions.map((x) => `index${x}`);\n\nexport default function resolveFileSync(specifier: string, context?: Context) {\n const filePath = toPath(specifier, context);\n const ext = path.extname(filePath);\n\n let stats: fs.Stats | undefined;\n try {\n stats = fs.statSync(filePath);\n } catch (_err) {}\n\n // biome-ignore lint/complexity/useOptionalChain: <explanation>\n if ((stats && stats.isDirectory()) || specifier.endsWith('/')) {\n const items = fs.readdirSync(filePath);\n const item = items.find((x) => indexExtensions.indexOf(x) >= 0);\n if (item) return path.join(filePath, item);\n }\n\n // look up the extension\n else if (!stats || (!ext && !moduleRegEx.test(specifier))) {\n const fileName = path.basename(filePath).replace(/(\\.[^/.]+)+$/, '');\n const items = fs.readdirSync(path.dirname(filePath));\n const item = items.find((x) => x.startsWith(fileName) && !typeFileRegEx.test(x) && extensions.indexOf(path.extname(x)) >= 0);\n if (item) return path.join(path.dirname(filePath), item);\n }\n\n // return what was found\n return stats ? filePath : null;\n}\n"],"names":["resolveFileSync","indexExtensions","extensions","map","x","specifier","context","filePath","toPath","ext","path","extname","stats","fs","statSync","_err","isDirectory","endsWith","items","readdirSync","item","find","indexOf","join","moduleRegEx","test","fileName","basename","replace","dirname","startsWith","typeFileRegEx"],"mappings":";;;;+BASA;;;eAAwBA;;;yDATT;2DACE;yBAC0B;iEACpB;6DACJ;;;;;;AAGnB,IAAMC,kBAAkBC,mBAAU,CAACC,GAAG,CAAC,SAACC;WAAM,AAAC,QAAS,OAAFA;;AAEvC,SAASJ,gBAAgBK,SAAiB,EAAEC,OAAiB;IAC1E,IAAMC,WAAWC,IAAAA,eAAM,EAACH,WAAWC;IACnC,IAAMG,MAAMC,aAAI,CAACC,OAAO,CAACJ;IAEzB,IAAIK;IACJ,IAAI;QACFA,QAAQC,WAAE,CAACC,QAAQ,CAACP;IACtB,EAAE,OAAOQ,MAAM,CAAC;IAEhB,+DAA+D;IAC/D,IAAI,AAACH,SAASA,MAAMI,WAAW,MAAOX,UAAUY,QAAQ,CAAC,MAAM;QAC7D,IAAMC,QAAQL,WAAE,CAACM,WAAW,CAACZ;QAC7B,IAAMa,OAAOF,MAAMG,IAAI,CAAC,SAACjB;mBAAMH,gBAAgBqB,OAAO,CAAClB,MAAM;;QAC7D,IAAIgB,MAAM,OAAOV,aAAI,CAACa,IAAI,CAAChB,UAAUa;IACvC,OAGK,IAAI,CAACR,SAAU,CAACH,OAAO,CAACe,sBAAW,CAACC,IAAI,CAACpB,YAAa;QACzD,IAAMqB,WAAWhB,aAAI,CAACiB,QAAQ,CAACpB,UAAUqB,OAAO,CAAC,gBAAgB;QACjE,IAAMV,SAAQL,WAAE,CAACM,WAAW,CAACT,aAAI,CAACmB,OAAO,CAACtB;QAC1C,IAAMa,QAAOF,OAAMG,IAAI,CAAC,SAACjB;mBAAMA,EAAE0B,UAAU,CAACJ,aAAa,CAACK,wBAAa,CAACN,IAAI,CAACrB,MAAMF,mBAAU,CAACoB,OAAO,CAACZ,aAAI,CAACC,OAAO,CAACP,OAAO;;QAC1H,IAAIgB,OAAM,OAAOV,aAAI,CAACa,IAAI,CAACb,aAAI,CAACmB,OAAO,CAACtB,WAAWa;IACrD;IAEA,wBAAwB;IACxB,OAAOR,QAAQL,WAAW;AAC5B"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/resolveFileSync.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport { moduleRegEx, typeFileRegEx } from './constants.js';\nimport extensions from './extensions.js';\nimport toPath from './toPath.js';\nimport type { Context } from './types.js';\n\nconst indexExtensions = extensions.map((x) => `index${x}`);\n\nexport default function resolveFileSync(specifier: string, context?: Context) {\n const filePath = toPath(specifier, context);\n const ext = path.extname(filePath);\n\n let stats: fs.Stats | undefined;\n try {\n stats = fs.statSync(filePath);\n } catch (_err) {}\n\n // biome-ignore lint/complexity/useOptionalChain: <explanation>\n if ((stats && stats.isDirectory()) || specifier.endsWith('/')) {\n const items = fs.readdirSync(filePath);\n const item = items.find((x) => indexExtensions.indexOf(x) >= 0);\n if (item) return path.join(filePath, item);\n }\n\n // look up the extension\n else if (!stats || (!ext && !moduleRegEx.test(specifier))) {\n const fileName = path.basename(filePath).replace(/(\\.[^/.]+)+$/, '');\n const items = fs.readdirSync(path.dirname(filePath));\n const item = items.find((x) => x.startsWith(fileName) && !typeFileRegEx.test(x) && extensions.indexOf(path.extname(x)) >= 0);\n if (item) return path.join(path.dirname(filePath), item);\n }\n\n // return what was found\n return stats ? filePath : null;\n}\n"],"names":["resolveFileSync","indexExtensions","extensions","map","x","specifier","context","filePath","toPath","ext","path","extname","stats","fs","statSync","_err","isDirectory","endsWith","items","readdirSync","item","find","indexOf","join","moduleRegEx","test","fileName","basename","replace","dirname","startsWith","typeFileRegEx"],"mappings":";;;;+BASA;;;eAAwBA;;;yDATT;2DACE;yBAC0B;iEACpB;6DACJ;;;;;;AAGnB,IAAMC,kBAAkBC,mBAAU,CAACC,GAAG,CAAC,SAACC;WAAM,AAAC,QAAS,OAAFA;;AAEvC,SAASJ,gBAAgBK,SAAiB,EAAEC,OAAiB;IAC1E,IAAMC,WAAWC,IAAAA,eAAM,EAACH,WAAWC;IACnC,IAAMG,MAAMC,aAAI,CAACC,OAAO,CAACJ;IAEzB,IAAIK;IACJ,IAAI;QACFA,QAAQC,WAAE,CAACC,QAAQ,CAACP;IACtB,EAAE,OAAOQ,MAAM,CAAC;IAEhB,+DAA+D;IAC/D,IAAI,AAACH,SAASA,MAAMI,WAAW,MAAOX,UAAUY,QAAQ,CAAC,MAAM;QAC7D,IAAMC,QAAQL,WAAE,CAACM,WAAW,CAACZ;QAC7B,IAAMa,OAAOF,MAAMG,IAAI,CAAC,SAACjB;mBAAMH,gBAAgBqB,OAAO,CAAClB,MAAM;;QAC7D,IAAIgB,MAAM,OAAOV,aAAI,CAACa,IAAI,CAAChB,UAAUa;IACvC,OAGK,IAAI,CAACR,SAAU,CAACH,OAAO,CAACe,sBAAW,CAACC,IAAI,CAACpB,YAAa;QACzD,IAAMqB,WAAWhB,aAAI,CAACiB,QAAQ,CAACpB,UAAUqB,OAAO,CAAC,gBAAgB;QACjE,IAAMV,SAAQL,WAAE,CAACM,WAAW,CAACT,aAAI,CAACmB,OAAO,CAACtB;QAC1C,IAAMa,QAAOF,OAAMG,IAAI,CAAC,SAACjB;mBAAMA,EAAE0B,UAAU,CAACJ,aAAa,CAACK,wBAAa,CAACN,IAAI,CAACrB,MAAMF,mBAAU,CAACoB,OAAO,CAACZ,aAAI,CAACC,OAAO,CAACP,OAAO;;QAC1H,IAAIgB,OAAM,OAAOV,aAAI,CAACa,IAAI,CAACb,aAAI,CAACmB,OAAO,CAACtB,WAAWa;IACrD;IAEA,wBAAwB;IACxB,OAAOR,QAAQL,WAAW;AAC5B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["toPath.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport isAbsolute from 'is-absolute';\nimport resolve from 'resolve';\nimport { moduleRegEx } from './constants.js';\nimport fileURLToPath from './lib/fileURLToPath.js';\nimport type { Context } from './types.js';\n\nfunction getParentPath(context: Context) {\n if (context.parentPath) return path.dirname(context.parentPath);\n return context.parentURL ? path.dirname(toPath(context.parentURL)) : process.cwd();\n}\n\nexport default function toPath(specifier: string, context?: Context) {\n if (specifier.startsWith('file:')) return fileURLToPath(specifier);\n if (isAbsolute(specifier)) return specifier;\n if (specifier[0] === '.') {\n const parentPath = context ? getParentPath(context) : process.cwd();\n return path.resolve(parentPath, specifier);\n }\n if (moduleRegEx.test(specifier)) {\n const parentPath = context ? getParentPath(context) : process.cwd();\n\n let pkg = null;\n const main = resolve.sync(specifier, {\n basedir: parentPath,\n extensions: ['.js', '.json', '.node', '.mjs'],\n packageFilter(json, dir) {\n pkg = { json, dir };\n return json;\n },\n });\n if (!pkg || !pkg.json.module) return main; // no modules, use main\n if (pkg.json.name === specifier) return path.resolve(pkg.dir, pkg.json.module); // the module\n\n // a relative path. Only accept if it doesn't break the relative naming and it exists\n const modulePath = path.resolve(pkg.dir, pkg.json.module);\n const mainPath = path.resolve(pkg.dir, pkg.json.main);\n const moduleResolved = path.resolve(modulePath, path.relative(mainPath, main));\n return moduleResolved.indexOf(specifier.replace(pkg.json.name, '')) < 0 || !fs.existsSync(moduleResolved) ? main : moduleResolved;\n }\n\n return specifier;\n}\n"],"names":["toPath","getParentPath","context","parentPath","path","dirname","parentURL","process","cwd","specifier","startsWith","fileURLToPath","isAbsolute","resolve","moduleRegEx","test","pkg","main","sync","basedir","extensions","packageFilter","json","dir","module","name","modulePath","mainPath","moduleResolved","relative","indexOf","replace","fs","existsSync"],"mappings":";;;;+BAaA;;;eAAwBA;;;yDAbT;2DACE;iEACM;8DACH;yBACQ;oEACF;;;;;;AAG1B,SAASC,cAAcC,OAAgB;IACrC,IAAIA,QAAQC,UAAU,EAAE,OAAOC,aAAI,CAACC,OAAO,CAACH,QAAQC,UAAU;IAC9D,OAAOD,QAAQI,SAAS,GAAGF,aAAI,CAACC,OAAO,CAACL,OAAOE,QAAQI,SAAS,KAAKC,QAAQC,GAAG;AAClF;AAEe,SAASR,OAAOS,SAAiB,EAAEP,OAAiB;IACjE,IAAIO,UAAUC,UAAU,CAAC,UAAU,OAAOC,IAAAA,sBAAa,EAACF;IACxD,IAAIG,IAAAA,mBAAU,EAACH,YAAY,OAAOA;IAClC,IAAIA,SAAS,CAAC,EAAE,KAAK,KAAK;QACxB,IAAMN,aAAaD,UAAUD,cAAcC,WAAWK,QAAQC,GAAG;QACjE,OAAOJ,aAAI,CAACS,OAAO,CAACV,YAAYM;IAClC;IACA,IAAIK,sBAAW,CAACC,IAAI,CAACN,YAAY;QAC/B,IAAMN,cAAaD,UAAUD,cAAcC,WAAWK,QAAQC,GAAG;QAEjE,IAAIQ,MAAM;QACV,IAAMC,OAAOJ,gBAAO,CAACK,IAAI,CAACT,WAAW;YACnCU,SAAShB;YACTiB,YAAY;gBAAC;gBAAO;gBAAS;gBAAS;aAAO;YAC7CC,eAAAA,SAAAA,cAAcC,IAAI,EAAEC,GAAG;gBACrBP,MAAM;oBAAEM,MAAAA;oBAAMC,KAAAA;gBAAI;gBAClB,OAAOD;YACT;QACF;QACA,IAAI,CAACN,OAAO,CAACA,IAAIM,IAAI,CAACE,MAAM,EAAE,OAAOP,MAAM,uBAAuB;QAClE,IAAID,IAAIM,IAAI,CAACG,IAAI,KAAKhB,WAAW,OAAOL,aAAI,CAACS,OAAO,CAACG,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACE,MAAM,GAAG,aAAa;QAE7F,qFAAqF;QACrF,IAAME,aAAatB,aAAI,CAACS,OAAO,CAACG,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACE,MAAM;QACxD,IAAMG,WAAWvB,aAAI,CAACS,OAAO,CAACG,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACL,IAAI;QACpD,IAAMW,iBAAiBxB,aAAI,CAACS,OAAO,CAACa,YAAYtB,aAAI,CAACyB,QAAQ,CAACF,UAAUV;QACxE,OAAOW,eAAeE,OAAO,CAACrB,UAAUsB,OAAO,CAACf,IAAIM,IAAI,CAACG,IAAI,EAAE,OAAO,KAAK,CAACO,WAAE,CAACC,UAAU,CAACL,kBAAkBX,OAAOW;IACrH;IAEA,OAAOnB;AACT"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/toPath.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport isAbsolute from 'is-absolute';\nimport resolve from 'resolve';\nimport { moduleRegEx } from './constants.js';\nimport fileURLToPath from './lib/fileURLToPath.js';\nimport type { Context } from './types.js';\n\nfunction getParentPath(context: Context) {\n if (context.parentPath) return path.dirname(context.parentPath);\n return context.parentURL ? path.dirname(toPath(context.parentURL)) : process.cwd();\n}\n\nexport default function toPath(specifier: string, context?: Context) {\n if (specifier.startsWith('file:')) return fileURLToPath(specifier);\n if (isAbsolute(specifier)) return specifier;\n if (specifier[0] === '.') {\n const parentPath = context ? getParentPath(context) : process.cwd();\n return path.resolve(parentPath, specifier);\n }\n if (moduleRegEx.test(specifier)) {\n const parentPath = context ? getParentPath(context) : process.cwd();\n\n let pkg = null;\n const main = resolve.sync(specifier, {\n basedir: parentPath,\n extensions: ['.js', '.json', '.node', '.mjs'],\n packageFilter(json, dir) {\n pkg = { json, dir };\n return json;\n },\n });\n if (!pkg || !pkg.json.module) return main; // no modules, use main\n if (pkg.json.name === specifier) return path.resolve(pkg.dir, pkg.json.module); // the module\n\n // a relative path. Only accept if it doesn't break the relative naming and it exists\n const modulePath = path.resolve(pkg.dir, pkg.json.module);\n const mainPath = path.resolve(pkg.dir, pkg.json.main);\n const moduleResolved = path.resolve(modulePath, path.relative(mainPath, main));\n return moduleResolved.indexOf(specifier.replace(pkg.json.name, '')) < 0 || !fs.existsSync(moduleResolved) ? main : moduleResolved;\n }\n\n return specifier;\n}\n"],"names":["toPath","getParentPath","context","parentPath","path","dirname","parentURL","process","cwd","specifier","startsWith","fileURLToPath","isAbsolute","resolve","moduleRegEx","test","pkg","main","sync","basedir","extensions","packageFilter","json","dir","module","name","modulePath","mainPath","moduleResolved","relative","indexOf","replace","fs","existsSync"],"mappings":";;;;+BAaA;;;eAAwBA;;;yDAbT;2DACE;iEACM;8DACH;yBACQ;oEACF;;;;;;AAG1B,SAASC,cAAcC,OAAgB;IACrC,IAAIA,QAAQC,UAAU,EAAE,OAAOC,aAAI,CAACC,OAAO,CAACH,QAAQC,UAAU;IAC9D,OAAOD,QAAQI,SAAS,GAAGF,aAAI,CAACC,OAAO,CAACL,OAAOE,QAAQI,SAAS,KAAKC,QAAQC,GAAG;AAClF;AAEe,SAASR,OAAOS,SAAiB,EAAEP,OAAiB;IACjE,IAAIO,UAAUC,UAAU,CAAC,UAAU,OAAOC,IAAAA,sBAAa,EAACF;IACxD,IAAIG,IAAAA,mBAAU,EAACH,YAAY,OAAOA;IAClC,IAAIA,SAAS,CAAC,EAAE,KAAK,KAAK;QACxB,IAAMN,aAAaD,UAAUD,cAAcC,WAAWK,QAAQC,GAAG;QACjE,OAAOJ,aAAI,CAACS,OAAO,CAACV,YAAYM;IAClC;IACA,IAAIK,sBAAW,CAACC,IAAI,CAACN,YAAY;QAC/B,IAAMN,cAAaD,UAAUD,cAAcC,WAAWK,QAAQC,GAAG;QAEjE,IAAIQ,MAAM;QACV,IAAMC,OAAOJ,gBAAO,CAACK,IAAI,CAACT,WAAW;YACnCU,SAAShB;YACTiB,YAAY;gBAAC;gBAAO;gBAAS;gBAAS;aAAO;YAC7CC,eAAAA,SAAAA,cAAcC,IAAI,EAAEC,GAAG;gBACrBP,MAAM;oBAAEM,MAAAA;oBAAMC,KAAAA;gBAAI;gBAClB,OAAOD;YACT;QACF;QACA,IAAI,CAACN,OAAO,CAACA,IAAIM,IAAI,CAACE,MAAM,EAAE,OAAOP,MAAM,uBAAuB;QAClE,IAAID,IAAIM,IAAI,CAACG,IAAI,KAAKhB,WAAW,OAAOL,aAAI,CAACS,OAAO,CAACG,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACE,MAAM,GAAG,aAAa;QAE7F,qFAAqF;QACrF,IAAME,aAAatB,aAAI,CAACS,OAAO,CAACG,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACE,MAAM;QACxD,IAAMG,WAAWvB,aAAI,CAACS,OAAO,CAACG,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACL,IAAI;QACpD,IAAMW,iBAAiBxB,aAAI,CAACS,OAAO,CAACa,YAAYtB,aAAI,CAACyB,QAAQ,CAACF,UAAUV;QACxE,OAAOW,eAAeE,OAAO,CAACrB,UAAUsB,OAAO,CAACf,IAAIM,IAAI,CAACG,IAAI,EAAE,OAAO,KAAK,CAACO,WAAE,CAACC,UAAU,CAACL,kBAAkBX,OAAOW;IACrH;IAEA,OAAOnB;AACT"}
@@ -1 +1 @@
1
- {"version":3,"sources":["transformDirectory.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\n// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation>\nimport Promise from 'pinkie-promise';\nimport wrapWorker from './lib/wrapWorker.js';\nconst major = +process.versions.node.split('.')[0];\nconst version = major < 14 ? 'stable' : 'local';\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst workerWrapper = wrapWorker(path.resolve(__dirname, '..', 'cjs', 'workers', 'transformDirectory.js'));\n\nimport type { TransformDirectoryCallback, TransformDirectoryOptions, TransformResult } from './types.js';\n\n/**\n * @param {string} src The source directory to traverse.\n * @param {string} dest The output directory to write files to.\n * @param {string} type The type of transform ('esm' or 'cjs').\n * @param {{sourceMaps: boolean}} options Options to pass to swc.\n * @param {(err?: Error) =>} [callback] Optional callback. Uses promise if callback not provided.\n * @returns {void | Promise<any>} Optional promise if callback not provided.\n */\nexport default function transformDirectory(src: string, dest: string, type: string, options?: TransformDirectoryOptions | TransformDirectoryCallback, callback?: TransformDirectoryCallback): undefined | Promise<TransformResult[]> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n if (typeof src !== 'string') throw new Error('transformDirectory: unexpected source');\n if (typeof dest !== 'string') throw new Error('transformDirectory: unexpected destination directory');\n if (typeof type !== 'string') throw new Error('transformDirectory: unexpected type');\n\n if (typeof callback === 'function') return workerWrapper(version, src, dest, type, options, callback);\n return new Promise((resolve, reject) => {\n workerWrapper(version, src, dest, type, options, (err, result) => {\n err ? reject(err) : resolve(result);\n });\n });\n}\n"],"names":["transformDirectory","major","process","versions","node","split","version","__dirname","path","dirname","__filename","url","fileURLToPath","workerWrapper","wrapWorker","resolve","src","dest","type","options","callback","Error","Promise","reject","err","result"],"mappings":";;;;+BAYA;;;;;;;CAOC,GACD;;;eAAwBA;;;2DApBP;0DACD;oEAEI;iEACG;;;;;;AACvB,IAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,IAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,IAAMM,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,gBAAgBC,IAAAA,mBAAU,EAACN,aAAI,CAACO,OAAO,CAACR,WAAW,MAAM,OAAO,WAAW;AAYlE,SAASP,mBAAmBgB,GAAW,EAAEC,IAAY,EAAEC,IAAY,EAAEC,OAAgE,EAAEC,QAAqC;IACzL,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IACtB,IAAI,OAAOH,QAAQ,UAAU,MAAM,IAAIK,MAAM;IAC7C,IAAI,OAAOJ,SAAS,UAAU,MAAM,IAAII,MAAM;IAC9C,IAAI,OAAOH,SAAS,UAAU,MAAM,IAAIG,MAAM;IAE9C,IAAI,OAAOD,aAAa,YAAY,OAAOP,cAAcP,SAASU,KAAKC,MAAMC,MAAMC,SAASC;IAC5F,OAAO,IAAIE,sBAAO,CAAC,SAACP,SAASQ;QAC3BV,cAAcP,SAASU,KAAKC,MAAMC,MAAMC,SAAS,SAACK,KAAKC;YACrDD,MAAMD,OAAOC,OAAOT,QAAQU;QAC9B;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/transformDirectory.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\n// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation>\nimport Promise from 'pinkie-promise';\nimport wrapWorker from './lib/wrapWorker.js';\nconst major = +process.versions.node.split('.')[0];\nconst version = major < 14 ? 'stable' : 'local';\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst workerWrapper = wrapWorker(path.resolve(__dirname, '..', 'cjs', 'workers', 'transformDirectory.js'));\n\nimport type { TransformDirectoryCallback, TransformDirectoryOptions, TransformResult } from './types.js';\n\n/**\n * @param {string} src The source directory to traverse.\n * @param {string} dest The output directory to write files to.\n * @param {string} type The type of transform ('esm' or 'cjs').\n * @param {{sourceMaps: boolean}} options Options to pass to swc.\n * @param {(err?: Error) =>} [callback] Optional callback. Uses promise if callback not provided.\n * @returns {void | Promise<any>} Optional promise if callback not provided.\n */\nexport default function transformDirectory(src: string, dest: string, type: string, options?: TransformDirectoryOptions | TransformDirectoryCallback, callback?: TransformDirectoryCallback): undefined | Promise<TransformResult[]> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n if (typeof src !== 'string') throw new Error('transformDirectory: unexpected source');\n if (typeof dest !== 'string') throw new Error('transformDirectory: unexpected destination directory');\n if (typeof type !== 'string') throw new Error('transformDirectory: unexpected type');\n\n if (typeof callback === 'function') return workerWrapper(version, src, dest, type, options, callback);\n return new Promise((resolve, reject) => {\n workerWrapper(version, src, dest, type, options, (err, result) => {\n err ? reject(err) : resolve(result);\n });\n });\n}\n"],"names":["transformDirectory","major","process","versions","node","split","version","__dirname","path","dirname","__filename","url","fileURLToPath","workerWrapper","wrapWorker","resolve","src","dest","type","options","callback","Error","Promise","reject","err","result"],"mappings":";;;;+BAYA;;;;;;;CAOC,GACD;;;eAAwBA;;;2DApBP;0DACD;oEAEI;iEACG;;;;;;AACvB,IAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,IAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,IAAMM,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,gBAAgBC,IAAAA,mBAAU,EAACN,aAAI,CAACO,OAAO,CAACR,WAAW,MAAM,OAAO,WAAW;AAYlE,SAASP,mBAAmBgB,GAAW,EAAEC,IAAY,EAAEC,IAAY,EAAEC,OAAgE,EAAEC,QAAqC;IACzL,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IACtB,IAAI,OAAOH,QAAQ,UAAU,MAAM,IAAIK,MAAM;IAC7C,IAAI,OAAOJ,SAAS,UAAU,MAAM,IAAII,MAAM;IAC9C,IAAI,OAAOH,SAAS,UAAU,MAAM,IAAIG,MAAM;IAE9C,IAAI,OAAOD,aAAa,YAAY,OAAOP,cAAcP,SAASU,KAAKC,MAAMC,MAAMC,SAASC;IAC5F,OAAO,IAAIE,sBAAO,CAAC,SAACP,SAASQ;QAC3BV,cAAcP,SAASU,KAAKC,MAAMC,MAAMC,SAAS,SAACK,KAAKC;YACrDD,MAAMD,OAAOC,OAAOT,QAAQU;QAC9B;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["transformFile.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\n// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation>\nimport Promise from 'pinkie-promise';\nimport wrapWorker from './lib/wrapWorker.js';\nconst major = +process.versions.node.split('.')[0];\nconst version = major < 14 ? 'stable' : 'local';\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst workerWrapper = wrapWorker(path.resolve(__dirname, '..', 'cjs', 'workers', 'transformFile.js'));\n\nimport type { TransformFileCallback, TransformFileOptions } from './types.js';\n\n/**\n * @param {string} src The source directory to traverse.\n * @param {string} dest The output directory to write files to.\n * @param {string} type The type of transform ('esm' or 'cjs').\n * @param {{sourceMaps: boolean}} options Options to pass to swc.\n * @param {(err?: Error) =>} [callback] Optional callback. Uses promise if callback not provided.\n * @returns {void | Promise<any>} Optional promise if callback not provided.\n */\nexport default function transformFile(src: string, dest: string, type: string, options?: TransformFileOptions | TransformFileCallback, callback?: TransformFileCallback): undefined | Promise<string> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n if (typeof src !== 'string') throw new Error('transformFile: unexpected source');\n if (typeof dest !== 'string') throw new Error('transformFile: unexpected destination directory');\n if (typeof type !== 'string') throw new Error('transformFile: unexpected type');\n\n if (typeof callback === 'function') return workerWrapper(version, src, dest, type, options, callback);\n return new Promise((resolve, reject) => {\n workerWrapper(version, src, dest, type, options, (err?: Error, result?: string) => {\n err ? reject(err) : resolve(result);\n });\n });\n}\n"],"names":["transformFile","major","process","versions","node","split","version","__dirname","path","dirname","__filename","url","fileURLToPath","workerWrapper","wrapWorker","resolve","src","dest","type","options","callback","Error","Promise","reject","err","result"],"mappings":";;;;+BAYA;;;;;;;CAOC,GACD;;;eAAwBA;;;2DApBP;0DACD;oEAEI;iEACG;;;;;;AACvB,IAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,IAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,IAAMM,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,gBAAgBC,IAAAA,mBAAU,EAACN,aAAI,CAACO,OAAO,CAACR,WAAW,MAAM,OAAO,WAAW;AAYlE,SAASP,cAAcgB,GAAW,EAAEC,IAAY,EAAEC,IAAY,EAAEC,OAAsD,EAAEC,QAAgC;IACrK,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IACtB,IAAI,OAAOH,QAAQ,UAAU,MAAM,IAAIK,MAAM;IAC7C,IAAI,OAAOJ,SAAS,UAAU,MAAM,IAAII,MAAM;IAC9C,IAAI,OAAOH,SAAS,UAAU,MAAM,IAAIG,MAAM;IAE9C,IAAI,OAAOD,aAAa,YAAY,OAAOP,cAAcP,SAASU,KAAKC,MAAMC,MAAMC,SAASC;IAC5F,OAAO,IAAIE,sBAAO,CAAC,SAACP,SAASQ;QAC3BV,cAAcP,SAASU,KAAKC,MAAMC,MAAMC,SAAS,SAACK,KAAaC;YAC7DD,MAAMD,OAAOC,OAAOT,QAAQU;QAC9B;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/transformFile.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\n// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation>\nimport Promise from 'pinkie-promise';\nimport wrapWorker from './lib/wrapWorker.js';\nconst major = +process.versions.node.split('.')[0];\nconst version = major < 14 ? 'stable' : 'local';\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst workerWrapper = wrapWorker(path.resolve(__dirname, '..', 'cjs', 'workers', 'transformFile.js'));\n\nimport type { TransformFileCallback, TransformFileOptions } from './types.js';\n\n/**\n * @param {string} src The source directory to traverse.\n * @param {string} dest The output directory to write files to.\n * @param {string} type The type of transform ('esm' or 'cjs').\n * @param {{sourceMaps: boolean}} options Options to pass to swc.\n * @param {(err?: Error) =>} [callback] Optional callback. Uses promise if callback not provided.\n * @returns {void | Promise<any>} Optional promise if callback not provided.\n */\nexport default function transformFile(src: string, dest: string, type: string, options?: TransformFileOptions | TransformFileCallback, callback?: TransformFileCallback): undefined | Promise<string> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n if (typeof src !== 'string') throw new Error('transformFile: unexpected source');\n if (typeof dest !== 'string') throw new Error('transformFile: unexpected destination directory');\n if (typeof type !== 'string') throw new Error('transformFile: unexpected type');\n\n if (typeof callback === 'function') return workerWrapper(version, src, dest, type, options, callback);\n return new Promise((resolve, reject) => {\n workerWrapper(version, src, dest, type, options, (err?: Error, result?: string) => {\n err ? reject(err) : resolve(result);\n });\n });\n}\n"],"names":["transformFile","major","process","versions","node","split","version","__dirname","path","dirname","__filename","url","fileURLToPath","workerWrapper","wrapWorker","resolve","src","dest","type","options","callback","Error","Promise","reject","err","result"],"mappings":";;;;+BAYA;;;;;;;CAOC,GACD;;;eAAwBA;;;2DApBP;0DACD;oEAEI;iEACG;;;;;;AACvB,IAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,IAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,IAAMM,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,gBAAgBC,IAAAA,mBAAU,EAACN,aAAI,CAACO,OAAO,CAACR,WAAW,MAAM,OAAO,WAAW;AAYlE,SAASP,cAAcgB,GAAW,EAAEC,IAAY,EAAEC,IAAY,EAAEC,OAAsD,EAAEC,QAAgC;IACrK,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IACtB,IAAI,OAAOH,QAAQ,UAAU,MAAM,IAAIK,MAAM;IAC7C,IAAI,OAAOJ,SAAS,UAAU,MAAM,IAAII,MAAM;IAC9C,IAAI,OAAOH,SAAS,UAAU,MAAM,IAAIG,MAAM;IAE9C,IAAI,OAAOD,aAAa,YAAY,OAAOP,cAAcP,SAASU,KAAKC,MAAMC,MAAMC,SAASC;IAC5F,OAAO,IAAIE,sBAAO,CAAC,SAACP,SAASQ;QAC3BV,cAAcP,SAASU,KAAKC,MAAMC,MAAMC,SAAS,SAACK,KAAaC;YAC7DD,MAAMD,OAAOC,OAAOT,QAAQU;QAC9B;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["transformSync.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\nimport wrapWorkerSync from './lib/wrapWorkerSync.js';\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst workerWrapper = wrapWorkerSync(path.resolve(__dirname, '..', 'cjs', 'workers', 'transformSync.js'));\n\nimport type { Output } from '@swc/core';\nimport type { TsConfigResult } from 'get-tsconfig-compat';\n/**\n * @param {string} contents The file contents.\n * @param {string} fileName The filename.\n * @param {TsConfigResult} tsconfig The configuration.\n * @returns {{ code: string, map?: string }} Returns object with the transformed code and source map if option sourceMaps was provided.\n */\nexport default function transformSync(contents: string, fileName: string, tsconfig: TsConfigResult): Output {\n return workerWrapper('stable', contents, fileName, tsconfig);\n}\n"],"names":["transformSync","__dirname","path","dirname","__filename","url","fileURLToPath","workerWrapper","wrapWorkerSync","resolve","contents","fileName","tsconfig"],"mappings":";;;;+BAQA;;;;;CAKC,GACD;;;eAAwBA;;;2DAdP;0DACD;qEACW;;;;;;AAC3B,IAAMC,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,gBAAgBC,IAAAA,uBAAc,EAACN,aAAI,CAACO,OAAO,CAACR,WAAW,MAAM,OAAO,WAAW;AAUtE,SAASD,cAAcU,QAAgB,EAAEC,QAAgB,EAAEC,QAAwB;IAChG,OAAOL,cAAc,UAAUG,UAAUC,UAAUC;AACrD"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/transformSync.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\nimport wrapWorkerSync from './lib/wrapWorkerSync.js';\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst workerWrapper = wrapWorkerSync(path.resolve(__dirname, '..', 'cjs', 'workers', 'transformSync.js'));\n\nimport type { Output } from '@swc/core';\nimport type { TsConfigResult } from 'get-tsconfig-compat';\n/**\n * @param {string} contents The file contents.\n * @param {string} fileName The filename.\n * @param {TsConfigResult} tsconfig The configuration.\n * @returns {{ code: string, map?: string }} Returns object with the transformed code and source map if option sourceMaps was provided.\n */\nexport default function transformSync(contents: string, fileName: string, tsconfig: TsConfigResult): Output {\n return workerWrapper('stable', contents, fileName, tsconfig);\n}\n"],"names":["transformSync","__dirname","path","dirname","__filename","url","fileURLToPath","workerWrapper","wrapWorkerSync","resolve","contents","fileName","tsconfig"],"mappings":";;;;+BAQA;;;;;CAKC,GACD;;;eAAwBA;;;2DAdP;0DACD;qEACW;;;;;;AAC3B,IAAMC,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,gBAAgBC,IAAAA,uBAAc,EAACN,aAAI,CAACO,OAAO,CAACR,WAAW,MAAM,OAAO,WAAW;AAUtE,SAASD,cAAcU,QAAgB,EAAEC,QAAgB,EAAEC,QAAwB;IAChG,OAAOL,cAAc,UAAUG,UAAUC,UAAUC;AACrD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["transformTypes.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\n// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation>\nimport Promise from 'pinkie-promise';\nimport wrapWorker from './lib/wrapWorker.js';\nconst major = +process.versions.node.split('.')[0];\nconst version = major < 14 ? 'stable' : 'local';\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst workerWrapper = wrapWorker(path.resolve(__dirname, '..', 'cjs', 'workers', 'transformTypes.js'));\n\nimport type { TransformResult, TransformTypesCallback, TransformTypesOptions } from './types.js';\n\n/**\n * @param {string} src The source directory to traverse.\n * @param {string} dest The output directory to write files to.\n * @param {{tsconfig: TsConfigResult}} options Options.\n * @param {(err?: Error) =>} [callback] Optional callback. Uses promise if callback not provided.\n * @returns {void | Promise<any>} Optional promise if callback not provided.\n */\nexport default function transformTypes(src: string, dest: string, options?: TransformTypesOptions | TransformTypesCallback, callback?: TransformTypesCallback): undefined | Promise<TransformResult[]> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n if (typeof src !== 'string') throw new Error('transformTypes: unexpected source');\n if (typeof dest !== 'string') throw new Error('transformTypes: unexpected destination directory');\n\n if (typeof callback === 'function') return workerWrapper(version, src, dest, options, callback);\n return new Promise((resolve, reject) => {\n workerWrapper(version, src, dest, options, (err, result) => {\n err ? reject(err) : resolve(result);\n });\n });\n}\n"],"names":["transformTypes","major","process","versions","node","split","version","__dirname","path","dirname","__filename","url","fileURLToPath","workerWrapper","wrapWorker","resolve","src","dest","options","callback","Error","Promise","reject","err","result"],"mappings":";;;;+BAYA;;;;;;CAMC,GACD;;;eAAwBA;;;2DAnBP;0DACD;oEAEI;iEACG;;;;;;AACvB,IAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,IAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,IAAMM,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,gBAAgBC,IAAAA,mBAAU,EAACN,aAAI,CAACO,OAAO,CAACR,WAAW,MAAM,OAAO,WAAW;AAWlE,SAASP,eAAegB,GAAW,EAAEC,IAAY,EAAEC,OAAwD,EAAEC,QAAiC;IAC3J,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IACtB,IAAI,OAAOF,QAAQ,UAAU,MAAM,IAAII,MAAM;IAC7C,IAAI,OAAOH,SAAS,UAAU,MAAM,IAAIG,MAAM;IAE9C,IAAI,OAAOD,aAAa,YAAY,OAAON,cAAcP,SAASU,KAAKC,MAAMC,SAASC;IACtF,OAAO,IAAIE,sBAAO,CAAC,SAACN,SAASO;QAC3BT,cAAcP,SAASU,KAAKC,MAAMC,SAAS,SAACK,KAAKC;YAC/CD,MAAMD,OAAOC,OAAOR,QAAQS;QAC9B;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/transformTypes.ts"],"sourcesContent":["import path from 'path';\nimport url from 'url';\n// biome-ignore lint/suspicious/noShadowRestrictedNames: <explanation>\nimport Promise from 'pinkie-promise';\nimport wrapWorker from './lib/wrapWorker.js';\nconst major = +process.versions.node.split('.')[0];\nconst version = major < 14 ? 'stable' : 'local';\nconst __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));\nconst workerWrapper = wrapWorker(path.resolve(__dirname, '..', 'cjs', 'workers', 'transformTypes.js'));\n\nimport type { TransformResult, TransformTypesCallback, TransformTypesOptions } from './types.js';\n\n/**\n * @param {string} src The source directory to traverse.\n * @param {string} dest The output directory to write files to.\n * @param {{tsconfig: TsConfigResult}} options Options.\n * @param {(err?: Error) =>} [callback] Optional callback. Uses promise if callback not provided.\n * @returns {void | Promise<any>} Optional promise if callback not provided.\n */\nexport default function transformTypes(src: string, dest: string, options?: TransformTypesOptions | TransformTypesCallback, callback?: TransformTypesCallback): undefined | Promise<TransformResult[]> {\n if (typeof options === 'function') {\n callback = options;\n options = null;\n }\n options = options || {};\n if (typeof src !== 'string') throw new Error('transformTypes: unexpected source');\n if (typeof dest !== 'string') throw new Error('transformTypes: unexpected destination directory');\n\n if (typeof callback === 'function') return workerWrapper(version, src, dest, options, callback);\n return new Promise((resolve, reject) => {\n workerWrapper(version, src, dest, options, (err, result) => {\n err ? reject(err) : resolve(result);\n });\n });\n}\n"],"names":["transformTypes","major","process","versions","node","split","version","__dirname","path","dirname","__filename","url","fileURLToPath","workerWrapper","wrapWorker","resolve","src","dest","options","callback","Error","Promise","reject","err","result"],"mappings":";;;;+BAYA;;;;;;CAMC,GACD;;;eAAwBA;;;2DAnBP;0DACD;oEAEI;iEACG;;;;;;AACvB,IAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,IAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,IAAMM,YAAYC,aAAI,CAACC,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaC,YAAG,CAACC,aAAa,CAAC;AAClG,IAAMC,gBAAgBC,IAAAA,mBAAU,EAACN,aAAI,CAACO,OAAO,CAACR,WAAW,MAAM,OAAO,WAAW;AAWlE,SAASP,eAAegB,GAAW,EAAEC,IAAY,EAAEC,OAAwD,EAAEC,QAAiC;IAC3J,IAAI,OAAOD,YAAY,YAAY;QACjCC,WAAWD;QACXA,UAAU;IACZ;IACAA,UAAUA,WAAW,CAAC;IACtB,IAAI,OAAOF,QAAQ,UAAU,MAAM,IAAII,MAAM;IAC7C,IAAI,OAAOH,SAAS,UAAU,MAAM,IAAIG,MAAM;IAE9C,IAAI,OAAOD,aAAa,YAAY,OAAON,cAAcP,SAASU,KAAKC,MAAMC,SAASC;IACtF,OAAO,IAAIE,sBAAO,CAAC,SAACN,SAASO;QAC3BT,cAAcP,SAASU,KAAKC,MAAMC,SAAS,SAACK,KAAKC;YAC/CD,MAAMD,OAAOC,OAAOR,QAAQS;QAC9B;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["transformDirectory.ts"],"sourcesContent":["import path from 'path';\nimport Iterator from 'fs-iterator';\nimport * as getTS from 'get-tsconfig-compat';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport { SKIPS, typeFileRegEx } from '../constants.js';\nimport createMatcher from '../createMatcher.js';\nimport transformFile from './transformFile.js';\n\nexport default function transformDirectoryWorker(src, dest, type, options, callback) {\n const tsconfig = options.tsconfig ? options.tsconfig : getTS.getTsconfig(src);\n const matcher = createMatcher(tsconfig);\n\n rimraf2(dest, { disableGlob: true }, () => {\n const entries = [];\n const iterator = new Iterator(src);\n iterator.forEach(\n (entry) => {\n if (!entry.stats.isFile()) return;\n if (!matcher(entry.fullPath)) return;\n if (typeFileRegEx.test(entry.basename)) return;\n if (SKIPS.indexOf(entry.basename) >= 0) return;\n entries.push(entry);\n },\n (err) => {\n if (err) return callback(err);\n const results = [];\n options = { ...options, tsconfig };\n\n const queue = new Queue();\n entries.forEach((entry) =>\n queue.defer((cb) =>\n transformFile(entry.fullPath, path.dirname(path.join(dest, entry.path)), type, options, (err, to) => {\n if (err) return cb(err);\n results.push({ from: entry, to: path.join(path.relative(src, path.dirname(entry.fullPath)), to) });\n if (options.sourceMaps) results.push({ from: entry, to: `${path.join(path.relative(src, path.dirname(entry.fullPath)), to)}.map` });\n cb();\n })\n )\n );\n queue.await((err) => (err ? callback(err) : callback(null, results)));\n }\n );\n });\n}\n"],"names":["transformDirectoryWorker","src","dest","type","options","callback","tsconfig","getTS","getTsconfig","matcher","createMatcher","rimraf2","disableGlob","entries","iterator","Iterator","forEach","entry","stats","isFile","fullPath","typeFileRegEx","test","basename","SKIPS","indexOf","push","err","results","queue","Queue","defer","cb","transformFile","path","dirname","join","to","from","relative","sourceMaps","await"],"mappings":";;;;+BAUA;;;eAAwBA;;;2DAVP;iEACI;yEACE;8DACL;8DACE;yBAEiB;oEACX;oEACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEX,SAASA,yBAAyBC,GAAG,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACjF,IAAMC,WAAWF,QAAQE,QAAQ,GAAGF,QAAQE,QAAQ,GAAGC,mBAAMC,WAAW,CAACP;IACzE,IAAMQ,UAAUC,IAAAA,sBAAa,EAACJ;IAE9BK,IAAAA,gBAAO,EAACT,MAAM;QAAEU,aAAa;IAAK,GAAG;QACnC,IAAMC,UAAU,EAAE;QAClB,IAAMC,WAAW,IAAIC,mBAAQ,CAACd;QAC9Ba,SAASE,OAAO,CACd,SAACC;YACC,IAAI,CAACA,MAAMC,KAAK,CAACC,MAAM,IAAI;YAC3B,IAAI,CAACV,QAAQQ,MAAMG,QAAQ,GAAG;YAC9B,IAAIC,wBAAa,CAACC,IAAI,CAACL,MAAMM,QAAQ,GAAG;YACxC,IAAIC,gBAAK,CAACC,OAAO,CAACR,MAAMM,QAAQ,KAAK,GAAG;YACxCV,QAAQa,IAAI,CAACT;QACf,GACA,SAACU;YACC,IAAIA,KAAK,OAAOtB,SAASsB;YACzB,IAAMC,UAAU,EAAE;YAClBxB,UAAU,wCAAKA;gBAASE,UAAAA;;YAExB,IAAMuB,QAAQ,IAAIC,gBAAK;YACvBjB,QAAQG,OAAO,CAAC,SAACC;uBACfY,MAAME,KAAK,CAAC,SAACC;2BACXC,IAAAA,sBAAa,EAAChB,MAAMG,QAAQ,EAAEc,aAAI,CAACC,OAAO,CAACD,aAAI,CAACE,IAAI,CAAClC,MAAMe,MAAMiB,IAAI,IAAI/B,MAAMC,SAAS,SAACuB,KAAKU;wBAC5F,IAAIV,KAAK,OAAOK,GAAGL;wBACnBC,QAAQF,IAAI,CAAC;4BAAEY,MAAMrB;4BAAOoB,IAAIH,aAAI,CAACE,IAAI,CAACF,aAAI,CAACK,QAAQ,CAACtC,KAAKiC,aAAI,CAACC,OAAO,CAAClB,MAAMG,QAAQ,IAAIiB;wBAAI;wBAChG,IAAIjC,QAAQoC,UAAU,EAAEZ,QAAQF,IAAI,CAAC;4BAAEY,MAAMrB;4BAAOoB,IAAI,AAAC,GAAkE,OAAhEH,aAAI,CAACE,IAAI,CAACF,aAAI,CAACK,QAAQ,CAACtC,KAAKiC,aAAI,CAACC,OAAO,CAAClB,MAAMG,QAAQ,IAAIiB,KAAI;wBAAM;wBACjIL;oBACF;;;YAGJH,MAAMY,KAAK,CAAC,SAACd;uBAASA,MAAMtB,SAASsB,OAAOtB,SAAS,MAAMuB;;QAC7D;IAEJ;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/workers/transformDirectory.ts"],"sourcesContent":["import path from 'path';\nimport Iterator from 'fs-iterator';\nimport * as getTS from 'get-tsconfig-compat';\nimport Queue from 'queue-cb';\nimport rimraf2 from 'rimraf2';\n\nimport { SKIPS, typeFileRegEx } from '../constants.js';\nimport createMatcher from '../createMatcher.js';\nimport transformFile from './transformFile.js';\n\nexport default function transformDirectoryWorker(src, dest, type, options, callback) {\n const tsconfig = options.tsconfig ? options.tsconfig : getTS.getTsconfig(src);\n const matcher = createMatcher(tsconfig);\n\n rimraf2(dest, { disableGlob: true }, () => {\n const entries = [];\n const iterator = new Iterator(src);\n iterator.forEach(\n (entry) => {\n if (!entry.stats.isFile()) return;\n if (!matcher(entry.fullPath)) return;\n if (typeFileRegEx.test(entry.basename)) return;\n if (SKIPS.indexOf(entry.basename) >= 0) return;\n entries.push(entry);\n },\n (err) => {\n if (err) return callback(err);\n const results = [];\n options = { ...options, tsconfig };\n\n const queue = new Queue();\n entries.forEach((entry) =>\n queue.defer((cb) =>\n transformFile(entry.fullPath, path.dirname(path.join(dest, entry.path)), type, options, (err, to) => {\n if (err) return cb(err);\n results.push({ from: entry, to: path.join(path.relative(src, path.dirname(entry.fullPath)), to) });\n if (options.sourceMaps) results.push({ from: entry, to: `${path.join(path.relative(src, path.dirname(entry.fullPath)), to)}.map` });\n cb();\n })\n )\n );\n queue.await((err) => (err ? callback(err) : callback(null, results)));\n }\n );\n });\n}\n"],"names":["transformDirectoryWorker","src","dest","type","options","callback","tsconfig","getTS","getTsconfig","matcher","createMatcher","rimraf2","disableGlob","entries","iterator","Iterator","forEach","entry","stats","isFile","fullPath","typeFileRegEx","test","basename","SKIPS","indexOf","push","err","results","queue","Queue","defer","cb","transformFile","path","dirname","join","to","from","relative","sourceMaps","await"],"mappings":";;;;+BAUA;;;eAAwBA;;;2DAVP;iEACI;yEACE;8DACL;8DACE;yBAEiB;oEACX;oEACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEX,SAASA,yBAAyBC,GAAG,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACjF,IAAMC,WAAWF,QAAQE,QAAQ,GAAGF,QAAQE,QAAQ,GAAGC,mBAAMC,WAAW,CAACP;IACzE,IAAMQ,UAAUC,IAAAA,sBAAa,EAACJ;IAE9BK,IAAAA,gBAAO,EAACT,MAAM;QAAEU,aAAa;IAAK,GAAG;QACnC,IAAMC,UAAU,EAAE;QAClB,IAAMC,WAAW,IAAIC,mBAAQ,CAACd;QAC9Ba,SAASE,OAAO,CACd,SAACC;YACC,IAAI,CAACA,MAAMC,KAAK,CAACC,MAAM,IAAI;YAC3B,IAAI,CAACV,QAAQQ,MAAMG,QAAQ,GAAG;YAC9B,IAAIC,wBAAa,CAACC,IAAI,CAACL,MAAMM,QAAQ,GAAG;YACxC,IAAIC,gBAAK,CAACC,OAAO,CAACR,MAAMM,QAAQ,KAAK,GAAG;YACxCV,QAAQa,IAAI,CAACT;QACf,GACA,SAACU;YACC,IAAIA,KAAK,OAAOtB,SAASsB;YACzB,IAAMC,UAAU,EAAE;YAClBxB,UAAU,wCAAKA;gBAASE,UAAAA;;YAExB,IAAMuB,QAAQ,IAAIC,gBAAK;YACvBjB,QAAQG,OAAO,CAAC,SAACC;uBACfY,MAAME,KAAK,CAAC,SAACC;2BACXC,IAAAA,sBAAa,EAAChB,MAAMG,QAAQ,EAAEc,aAAI,CAACC,OAAO,CAACD,aAAI,CAACE,IAAI,CAAClC,MAAMe,MAAMiB,IAAI,IAAI/B,MAAMC,SAAS,SAACuB,KAAKU;wBAC5F,IAAIV,KAAK,OAAOK,GAAGL;wBACnBC,QAAQF,IAAI,CAAC;4BAAEY,MAAMrB;4BAAOoB,IAAIH,aAAI,CAACE,IAAI,CAACF,aAAI,CAACK,QAAQ,CAACtC,KAAKiC,aAAI,CAACC,OAAO,CAAClB,MAAMG,QAAQ,IAAIiB;wBAAI;wBAChG,IAAIjC,QAAQoC,UAAU,EAAEZ,QAAQF,IAAI,CAAC;4BAAEY,MAAMrB;4BAAOoB,IAAI,AAAC,GAAkE,OAAhEH,aAAI,CAACE,IAAI,CAACF,aAAI,CAACK,QAAQ,CAACtC,KAAKiC,aAAI,CAACC,OAAO,CAAClB,MAAMG,QAAQ,IAAIiB,KAAI;wBAAM;wBACjIL;oBACF;;;YAGJH,MAAMY,KAAK,CAAC,SAACd;uBAASA,MAAMtB,SAASsB,OAAOtB,SAAS,MAAMuB;;QAC7D;IAEJ;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["transformFile.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport once from 'call-once-fn';\nimport * as getTS from 'get-tsconfig-compat';\nimport mkdirp from 'mkdirp-classic';\nimport Queue from 'queue-cb';\n\nimport swcPrepareOptions from '../lib/swcPrepareOptions.js';\n\n// @ts-ignore\nimport lazy from '../lib/lazy.cjs';\nconst lazySWC = lazy('@swc/core');\n\nconst matchingDeps = '\\\\s*[\\'\"`]([^\\'\"`]+)[\\'\"`]\\\\s*';\nconst matchingName = '\\\\s*(?:[\\\\w${},\\\\s*]+)\\\\s*';\nconst regexCJS = new RegExp(`(?:(?:var|const|let)${matchingName}=\\\\s*)?require\\\\(${matchingDeps}\\\\);?`, 'g');\nconst regexESM = new RegExp(`${regexCJS}|import(?:${matchingName}from\\\\s*)?${matchingDeps};?|export(?:${matchingName}from\\\\s*)?${matchingDeps};?`, 'g');\n\nconst importReplaceMJS = ['.js', '.ts', '.tsx', '.mts', '.mjs'];\nconst importReplaceCJS = ['.cts'];\nconst requireReplaceJS = ['.mjs', '.cjs', '.ts', '.tsx', '.mts', '.cts'];\n\nfunction makeReplacements(code, regex, extensions, extension) {\n let matches = [];\n let match = regex.exec(code);\n while (match) {\n const dependency = match[1] || match[2] || match[3] || match[4];\n const ext = extensions.find((x) => dependency.slice(-x.length) === x);\n if (ext) matches.push({ ext, match, dependency });\n match = regex.exec(code);\n }\n\n matches = matches.reverse();\n for (const index in matches) {\n const match = matches[index];\n const start = match.match.index + match.match[0].indexOf(match.dependency) + match.dependency.indexOf(match.ext);\n code = code.substring(0, start) + extension + code.substring(start + match.ext.length);\n }\n return code;\n}\n\n// https://github.com/vercel/next.js/blob/20b63e13ab2631d6043277895d373aa31a1b327c/packages/next/taskfile-swc.js#L118-L125\nconst interopClientDefaultExport = \"/* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }\";\n\nexport default function transformFileWorker(src, dest, type, options, callback) {\n let tsconfig = options.tsconfig ? options.tsconfig : getTS.getTsconfig(src);\n\n // overrides for cjs\n if (type === 'cjs') {\n tsconfig = { ...tsconfig };\n tsconfig.tsconfig = { ...(tsconfig.config || {}) };\n tsconfig.config.compilerOptions = { ...(tsconfig.config.compilerOptions || {}) };\n tsconfig.config.compilerOptions.module = 'CommonJS';\n tsconfig.config.compilerOptions.target = 'ES5';\n }\n\n swcPrepareOptions(tsconfig, (err, swcOptions) => {\n if (err) return callback(err);\n const swc = lazySWC();\n\n const basename = path.basename(src);\n swc\n .transformFile(src, {\n ...(basename.endsWith('.tsx') || basename.endsWith('.jsx') ? swcOptions.tsxOptions : swcOptions.nonTsxOptions),\n filename: basename,\n })\n .then((output) => {\n // infer extension and patch .mjs imports\n let ext = path.extname(basename);\n if (type === 'esm') {\n ext = importReplaceMJS.indexOf(ext) >= 0 ? '.mjs' : ext;\n output.code = makeReplacements(output.code, regexESM, importReplaceMJS, '.mjs');\n ext = importReplaceCJS.indexOf(ext) >= 0 ? '.cjs' : ext;\n output.code = makeReplacements(output.code, regexESM, importReplaceCJS, '.cjs');\n } else {\n ext = requireReplaceJS.indexOf(ext) >= 0 ? '.js' : ext;\n output.code = makeReplacements(output.code, regexCJS, requireReplaceJS, '.js');\n output.code += interopClientDefaultExport;\n }\n const destFilePath = path.join(dest, basename.replace(/\\.[^/.]+$/, '') + ext);\n\n mkdirp(path.dirname(destFilePath), () => {\n const queue = new Queue();\n queue.defer(fs.writeFile.bind(null, destFilePath, output.code, 'utf8'));\n !options.sourceMaps || queue.defer(fs.writeFile.bind(null, `${destFilePath}.map`, output.map, 'utf8'));\n queue.await(() => (err ? callback(err) : callback(null, path.relative(dest, destFilePath))));\n });\n })\n .catch(callback);\n });\n}\n"],"names":["transformFileWorker","lazySWC","lazy","matchingDeps","matchingName","regexCJS","RegExp","regexESM","importReplaceMJS","importReplaceCJS","requireReplaceJS","makeReplacements","code","regex","extensions","extension","dependency","match","ext","find","x","slice","length","matches","push","exec","reverse","index","start","indexOf","substring","interopClientDefaultExport","src","dest","type","options","callback","tsconfig","getTS","getTsconfig","config","compilerOptions","module","target","swcPrepareOptions","err","swcOptions","swc","basename","path","transformFile","endsWith","tsxOptions","nonTsxOptions","filename","then","output","extname","destFilePath","join","replace","mkdirp","dirname","queue","Queue","defer","fs","writeFile","bind","sourceMaps","map","await","relative","catch"],"mappings":"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"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/workers/transformFile.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport once from 'call-once-fn';\nimport * as getTS from 'get-tsconfig-compat';\nimport mkdirp from 'mkdirp-classic';\nimport Queue from 'queue-cb';\n\nimport swcPrepareOptions from '../lib/swcPrepareOptions.js';\n\n// @ts-ignore\nimport lazy from '../lib/lazy.cjs';\nconst lazySWC = lazy('@swc/core');\n\nconst matchingDeps = '\\\\s*[\\'\"`]([^\\'\"`]+)[\\'\"`]\\\\s*';\nconst matchingName = '\\\\s*(?:[\\\\w${},\\\\s*]+)\\\\s*';\nconst regexCJS = new RegExp(`(?:(?:var|const|let)${matchingName}=\\\\s*)?require\\\\(${matchingDeps}\\\\);?`, 'g');\nconst regexESM = new RegExp(`${regexCJS}|import(?:${matchingName}from\\\\s*)?${matchingDeps};?|export(?:${matchingName}from\\\\s*)?${matchingDeps};?`, 'g');\n\nconst importReplaceMJS = ['.js', '.ts', '.tsx', '.mts', '.mjs'];\nconst importReplaceCJS = ['.cts'];\nconst requireReplaceJS = ['.mjs', '.cjs', '.ts', '.tsx', '.mts', '.cts'];\n\nfunction makeReplacements(code, regex, extensions, extension) {\n let matches = [];\n let match = regex.exec(code);\n while (match) {\n const dependency = match[1] || match[2] || match[3] || match[4];\n const ext = extensions.find((x) => dependency.slice(-x.length) === x);\n if (ext) matches.push({ ext, match, dependency });\n match = regex.exec(code);\n }\n\n matches = matches.reverse();\n for (const index in matches) {\n const match = matches[index];\n const start = match.match.index + match.match[0].indexOf(match.dependency) + match.dependency.indexOf(match.ext);\n code = code.substring(0, start) + extension + code.substring(start + match.ext.length);\n }\n return code;\n}\n\n// https://github.com/vercel/next.js/blob/20b63e13ab2631d6043277895d373aa31a1b327c/packages/next/taskfile-swc.js#L118-L125\nconst interopClientDefaultExport = \"/* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }\";\n\nexport default function transformFileWorker(src, dest, type, options, callback) {\n let tsconfig = options.tsconfig ? options.tsconfig : getTS.getTsconfig(src);\n\n // overrides for cjs\n if (type === 'cjs') {\n tsconfig = { ...tsconfig };\n tsconfig.tsconfig = { ...(tsconfig.config || {}) };\n tsconfig.config.compilerOptions = { ...(tsconfig.config.compilerOptions || {}) };\n tsconfig.config.compilerOptions.module = 'CommonJS';\n tsconfig.config.compilerOptions.target = 'ES5';\n }\n\n swcPrepareOptions(tsconfig, (err, swcOptions) => {\n if (err) return callback(err);\n const swc = lazySWC();\n\n const basename = path.basename(src);\n swc\n .transformFile(src, {\n ...(basename.endsWith('.tsx') || basename.endsWith('.jsx') ? swcOptions.tsxOptions : swcOptions.nonTsxOptions),\n filename: basename,\n })\n .then((output) => {\n // infer extension and patch .mjs imports\n let ext = path.extname(basename);\n if (type === 'esm') {\n ext = importReplaceMJS.indexOf(ext) >= 0 ? '.mjs' : ext;\n output.code = makeReplacements(output.code, regexESM, importReplaceMJS, '.mjs');\n ext = importReplaceCJS.indexOf(ext) >= 0 ? '.cjs' : ext;\n output.code = makeReplacements(output.code, regexESM, importReplaceCJS, '.cjs');\n } else {\n ext = requireReplaceJS.indexOf(ext) >= 0 ? '.js' : ext;\n output.code = makeReplacements(output.code, regexCJS, requireReplaceJS, '.js');\n output.code += interopClientDefaultExport;\n }\n const destFilePath = path.join(dest, basename.replace(/\\.[^/.]+$/, '') + ext);\n\n mkdirp(path.dirname(destFilePath), () => {\n const queue = new Queue();\n queue.defer(fs.writeFile.bind(null, destFilePath, output.code, 'utf8'));\n !options.sourceMaps || queue.defer(fs.writeFile.bind(null, `${destFilePath}.map`, output.map, 'utf8'));\n queue.await(() => (err ? callback(err) : callback(null, path.relative(dest, destFilePath))));\n });\n })\n .catch(callback);\n });\n}\n"],"names":["transformFileWorker","lazySWC","lazy","matchingDeps","matchingName","regexCJS","RegExp","regexESM","importReplaceMJS","importReplaceCJS","requireReplaceJS","makeReplacements","code","regex","extensions","extension","dependency","match","ext","find","x","slice","length","matches","push","exec","reverse","index","start","indexOf","substring","interopClientDefaultExport","src","dest","type","options","callback","tsconfig","getTS","getTsconfig","config","compilerOptions","module","target","swcPrepareOptions","err","swcOptions","swc","basename","path","transformFile","endsWith","tsxOptions","nonTsxOptions","filename","then","output","extname","destFilePath","join","replace","mkdirp","dirname","queue","Queue","defer","fs","writeFile","bind","sourceMaps","map","await","relative","catch"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["transformSync.ts"],"sourcesContent":["import swcPrepareOptions from '../lib/swcPrepareOptions.js';\n\n// @ts-ignore\nimport lazy from '../lib/lazy.cjs';\nconst lazySWC = lazy('@swc/core');\n\nimport type { TsConfigResult } from 'get-tsconfig-compat';\nexport default function transformSyncWorker(contents: string, fileName: string, tsconfig: TsConfigResult, callback) {\n swcPrepareOptions(tsconfig, (err, swcOptions) => {\n if (err) return callback(err);\n const swc = lazySWC();\n swc\n .transform(contents, {\n ...(fileName.endsWith('.tsx') || fileName.endsWith('.jsx') ? swcOptions.tsxOptions : swcOptions.nonTsxOptions),\n filename: fileName,\n })\n .then((output) => callback(null, output))\n .catch(callback);\n });\n}\n"],"names":["transformSyncWorker","lazySWC","lazy","contents","fileName","tsconfig","callback","swcPrepareOptions","err","swcOptions","swc","transform","endsWith","tsxOptions","nonTsxOptions","filename","then","output","catch"],"mappings":";;;;+BAOA;;;eAAwBA;;;wEAPM;8DAGb;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACjB,IAAMC,UAAUC,IAAAA,gBAAI,EAAC;AAGN,SAASF,oBAAoBG,QAAgB,EAAEC,QAAgB,EAAEC,QAAwB,EAAEC,QAAQ;IAChHC,IAAAA,0BAAiB,EAACF,UAAU,SAACG,KAAKC;QAChC,IAAID,KAAK,OAAOF,SAASE;QACzB,IAAME,MAAMT;QACZS,IACGC,SAAS,CAACR,UAAU,wCACfC,SAASQ,QAAQ,CAAC,WAAWR,SAASQ,QAAQ,CAAC,UAAUH,WAAWI,UAAU,GAAGJ,WAAWK,aAAa;YAC7GC,UAAUX;YAEXY,IAAI,CAAC,SAACC;mBAAWX,SAAS,MAAMW;WAChCC,KAAK,CAACZ;IACX;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/workers/transformSync.ts"],"sourcesContent":["import swcPrepareOptions from '../lib/swcPrepareOptions.js';\n\n// @ts-ignore\nimport lazy from '../lib/lazy.cjs';\nconst lazySWC = lazy('@swc/core');\n\nimport type { TsConfigResult } from 'get-tsconfig-compat';\nexport default function transformSyncWorker(contents: string, fileName: string, tsconfig: TsConfigResult, callback) {\n swcPrepareOptions(tsconfig, (err, swcOptions) => {\n if (err) return callback(err);\n const swc = lazySWC();\n swc\n .transform(contents, {\n ...(fileName.endsWith('.tsx') || fileName.endsWith('.jsx') ? swcOptions.tsxOptions : swcOptions.nonTsxOptions),\n filename: fileName,\n })\n .then((output) => callback(null, output))\n .catch(callback);\n });\n}\n"],"names":["transformSyncWorker","lazySWC","lazy","contents","fileName","tsconfig","callback","swcPrepareOptions","err","swcOptions","swc","transform","endsWith","tsxOptions","nonTsxOptions","filename","then","output","catch"],"mappings":";;;;+BAOA;;;eAAwBA;;;wEAPM;8DAGb;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACjB,IAAMC,UAAUC,IAAAA,gBAAI,EAAC;AAGN,SAASF,oBAAoBG,QAAgB,EAAEC,QAAgB,EAAEC,QAAwB,EAAEC,QAAQ;IAChHC,IAAAA,0BAAiB,EAACF,UAAU,SAACG,KAAKC;QAChC,IAAID,KAAK,OAAOF,SAASE;QACzB,IAAME,MAAMT;QACZS,IACGC,SAAS,CAACR,UAAU,wCACfC,SAASQ,QAAQ,CAAC,WAAWR,SAASQ,QAAQ,CAAC,UAAUH,WAAWI,UAAU,GAAGJ,WAAWK,aAAa;YAC7GC,UAAUX;YAEXY,IAAI,CAAC,SAACC;mBAAWX,SAAS,MAAMW;WAChCC,KAAK,CAACZ;IACX;AACF"}