ts-swc-transform 1.8.9 → 1.9.0

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 (54) 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/swcInstallBindings.js.map +1 -1
  8. package/dist/cjs/lib/swcPrepareOptions.js.map +1 -1
  9. package/dist/cjs/lib/wrapWorker.js.map +1 -1
  10. package/dist/cjs/lib/wrapWorkerSync.js.map +1 -1
  11. package/dist/cjs/resolveFileSync.js.map +1 -1
  12. package/dist/cjs/toPath.js.map +1 -1
  13. package/dist/cjs/transformDirectory.js.map +1 -1
  14. package/dist/cjs/transformFile.js.map +1 -1
  15. package/dist/cjs/transformSync.js.map +1 -1
  16. package/dist/cjs/transformTypes.js.map +1 -1
  17. package/dist/cjs/workers/transformDirectory.js.map +1 -1
  18. package/dist/cjs/workers/transformFile.js.map +1 -1
  19. package/dist/cjs/workers/transformSync.js.map +1 -1
  20. package/dist/cjs/workers/transformTypes.js +2 -2
  21. package/dist/cjs/workers/transformTypes.js.map +1 -1
  22. package/dist/esm/constants.mjs.map +1 -1
  23. package/dist/esm/createMatcher.mjs.map +1 -1
  24. package/dist/esm/extensions.mjs.map +1 -1
  25. package/dist/esm/index.mjs.map +1 -1
  26. package/dist/esm/lib/fileURLToPath.mjs.map +1 -1
  27. package/dist/esm/lib/lazy.cjs.map +1 -1
  28. package/dist/esm/lib/swcInstallBindings.mjs.map +1 -1
  29. package/dist/esm/lib/swcPrepareOptions.mjs.map +1 -1
  30. package/dist/esm/lib/wrapWorker.mjs.map +1 -1
  31. package/dist/esm/lib/wrapWorkerSync.mjs.map +1 -1
  32. package/dist/esm/resolveFileSync.mjs.map +1 -1
  33. package/dist/esm/toPath.mjs.map +1 -1
  34. package/dist/esm/transformDirectory.mjs.map +1 -1
  35. package/dist/esm/transformFile.mjs.map +1 -1
  36. package/dist/esm/transformSync.mjs.map +1 -1
  37. package/dist/esm/transformTypes.mjs.map +1 -1
  38. package/dist/esm/types.mjs.map +1 -1
  39. package/dist/esm/workers/transformDirectory.mjs.map +1 -1
  40. package/dist/esm/workers/transformFile.mjs.map +1 -1
  41. package/dist/esm/workers/transformSync.mjs.map +1 -1
  42. package/dist/esm/workers/transformTypes.mjs +1 -1
  43. package/dist/esm/workers/transformTypes.mjs.map +1 -1
  44. package/package.json +4 -7
  45. package/dist/cjs/lib/packageRoot.js +0 -26
  46. package/dist/cjs/lib/packageRoot.js.map +0 -1
  47. package/dist/cjs/lib/which.js +0 -46
  48. package/dist/cjs/lib/which.js.map +0 -1
  49. package/dist/esm/lib/packageRoot.mjs +0 -10
  50. package/dist/esm/lib/packageRoot.mjs.map +0 -1
  51. package/dist/esm/lib/which.mjs +0 -30
  52. package/dist/esm/lib/which.mjs.map +0 -1
  53. package/dist/types/lib/packageRoot.d.ts +0 -1
  54. package/dist/types/lib/which.d.ts +0 -1
@@ -1 +1 @@
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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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"}
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"}
@@ -1 +1 @@
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
+ {"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":["/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"}
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"}
@@ -1 +1 @@
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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":["/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
+ {"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":";;;;+BA4CA;;;eAAwBA;;;yDA5CT;2DACE;yEAEM;oEACJ;8DACD;wEAEY;8DAGb;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACjB,IAAMC,UAAUC,IAAAA,gBAAI,EAAC;AAErB,IAAMC,eAAe;AACrB,IAAMC,eAAe;AACrB,IAAMC,WAAW,IAAIC,OAAO,AAAC,uBAAsDH,OAAhCC,cAAa,qBAAgC,OAAbD,cAAa,UAAQ;AACxG,IAAMI,WAAW,IAAID,OAAO,AAAC,GAAuBF,OAArBC,UAAS,cAAqCF,OAAzBC,cAAa,cAAuCA,OAA3BD,cAAa,gBAAuCA,OAAzBC,cAAa,cAAyB,OAAbD,cAAa,OAAK;AAEnJ,IAAMK,mBAAmB;IAAC;IAAO;IAAO;IAAQ;IAAQ;CAAO;AAC/D,IAAMC,mBAAmB;IAAC;CAAO;AACjC,IAAMC,mBAAmB;IAAC;IAAQ;IAAQ;IAAO;IAAQ;IAAQ;CAAO;AAExE,SAASC,iBAAiBC,IAAI,EAAEC,KAAK,EAAEC,UAAU,EAAEC,SAAS;;QAIxD,IAAMC,aAAaC,KAAK,CAAC,EAAE,IAAIA,KAAK,CAAC,EAAE,IAAIA,KAAK,CAAC,EAAE,IAAIA,KAAK,CAAC,EAAE;QAC/D,IAAMC,MAAMJ,WAAWK,IAAI,CAAC,SAACC;mBAAMJ,WAAWK,KAAK,CAAC,CAACD,EAAEE,MAAM,MAAMF;;QACnE,IAAIF,KAAKK,QAAQC,IAAI,CAAC;YAAEN,KAAAA;YAAKD,OAAAA;YAAOD,YAAAA;QAAW;QAC/CC,QAAQJ,MAAMY,IAAI,CAACb;IACrB;IAPA,IAAIW,UAAU,EAAE;IAChB,IAAIN,QAAQJ,MAAMY,IAAI,CAACb;IACvB,MAAOK;IAOPM,UAAUA,QAAQG,OAAO;IACzB,IAAK,IAAMC,SAASJ,QAAS;QAC3B,IAAMN,SAAQM,OAAO,CAACI,MAAM;QAC5B,IAAMC,QAAQX,OAAMA,KAAK,CAACU,KAAK,GAAGV,OAAMA,KAAK,CAAC,EAAE,CAACY,OAAO,CAACZ,OAAMD,UAAU,IAAIC,OAAMD,UAAU,CAACa,OAAO,CAACZ,OAAMC,GAAG;QAC/GN,OAAOA,KAAKkB,SAAS,CAAC,GAAGF,SAASb,YAAYH,KAAKkB,SAAS,CAACF,QAAQX,OAAMC,GAAG,CAACI,MAAM;IACvF;IACA,OAAOV;AACT;AAEA,0HAA0H;AAC1H,IAAMmB,6BAA6B;AAEpB,SAAS/B,oBAAoBgC,GAAG,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IAC5E,IAAIC,WAAWF,QAAQE,QAAQ,GAAGF,QAAQE,QAAQ,GAAGC,mBAAMC,WAAW,CAACP;IAEvE,oBAAoB;IACpB,IAAIE,SAAS,OAAO;QAClBG,WAAW,mBAAKA;QAChBA,SAASA,QAAQ,GAAG,mBAAMA,SAASG,MAAM,IAAI,CAAC;QAC9CH,SAASG,MAAM,CAACC,eAAe,GAAG,mBAAMJ,SAASG,MAAM,CAACC,eAAe,IAAI,CAAC;QAC5EJ,SAASG,MAAM,CAACC,eAAe,CAACC,MAAM,GAAG;QACzCL,SAASG,MAAM,CAACC,eAAe,CAACE,MAAM,GAAG;IAC3C;IAEAC,IAAAA,0BAAiB,EAACP,UAAU,SAACQ,KAAKC;QAChC,IAAID,KAAK,OAAOT,SAASS;QACzB,IAAME,MAAM9C;QAEZ,IAAM+C,WAAWC,aAAI,CAACD,QAAQ,CAAChB;QAC/Be,IACGG,aAAa,CAAClB,KAAK,wCACdgB,SAASG,QAAQ,CAAC,WAAWH,SAASG,QAAQ,CAAC,UAAUL,WAAWM,UAAU,GAAGN,WAAWO,aAAa;YAC7GC,UAAUN;YAEXO,IAAI,CAAC,SAACC;YACL,yCAAyC;YACzC,IAAItC,MAAM+B,aAAI,CAACQ,OAAO,CAACT;YACvB,IAAId,SAAS,OAAO;gBAClBhB,MAAMV,iBAAiBqB,OAAO,CAACX,QAAQ,IAAI,SAASA;gBACpDsC,OAAO5C,IAAI,GAAGD,iBAAiB6C,OAAO5C,IAAI,EAAEL,UAAUC,kBAAkB;gBACxEU,MAAMT,iBAAiBoB,OAAO,CAACX,QAAQ,IAAI,SAASA;gBACpDsC,OAAO5C,IAAI,GAAGD,iBAAiB6C,OAAO5C,IAAI,EAAEL,UAAUE,kBAAkB;YAC1E,OAAO;gBACLS,MAAMR,iBAAiBmB,OAAO,CAACX,QAAQ,IAAI,QAAQA;gBACnDsC,OAAO5C,IAAI,GAAGD,iBAAiB6C,OAAO5C,IAAI,EAAEP,UAAUK,kBAAkB;gBACxE8C,OAAO5C,IAAI,IAAImB;YACjB;YACA,IAAM2B,eAAeT,aAAI,CAACU,IAAI,CAAC1B,MAAMe,SAASY,OAAO,CAAC,aAAa,MAAM1C;YAEzE2C,IAAAA,sBAAM,EAACZ,aAAI,CAACa,OAAO,CAACJ,eAAe;gBACjC,IAAMK,QAAQ,IAAIC,gBAAK;gBACvBD,MAAME,KAAK,CAACC,WAAE,CAACC,SAAS,CAACC,IAAI,CAAC,MAAMV,cAAcF,OAAO5C,IAAI,EAAE;gBAC/D,CAACuB,QAAQkC,UAAU,IAAIN,MAAME,KAAK,CAACC,WAAE,CAACC,SAAS,CAACC,IAAI,CAAC,MAAM,AAAC,GAAe,OAAbV,cAAa,SAAOF,OAAOc,GAAG,EAAE;gBAC9FP,MAAMQ,KAAK,CAAC;2BAAO1B,MAAMT,SAASS,OAAOT,SAAS,MAAMa,aAAI,CAACuB,QAAQ,CAACvC,MAAMyB;;YAC9E;QACF,GACCe,KAAK,CAACrC;IACX;AACF"}
@@ -1 +1 @@
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"}
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"}
@@ -120,8 +120,8 @@ var _path = /*#__PURE__*/ _interop_require_default(require("path"));
120
120
  var _crossspawncb = /*#__PURE__*/ _interop_require_default(require("cross-spawn-cb"));
121
121
  var _fsiterator = /*#__PURE__*/ _interop_require_default(require("fs-iterator"));
122
122
  var _gettsconfigcompat = /*#__PURE__*/ _interop_require_wildcard(require("get-tsconfig-compat"));
123
+ var _modulewhich = /*#__PURE__*/ _interop_require_default(require("module-which"));
123
124
  var _rimraf2 = /*#__PURE__*/ _interop_require_default(require("rimraf2"));
124
- var _which = /*#__PURE__*/ _interop_require_default(require("../lib/which.js"));
125
125
  var _constants = require("../constants.js");
126
126
  var _createMatcher = /*#__PURE__*/ _interop_require_default(require("../createMatcher.js"));
127
127
  function _array_like_to_array(arr, len) {
@@ -196,7 +196,7 @@ function _unsupported_iterable_to_array(o, minLen) {
196
196
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
197
197
  }
198
198
  function transformTypesWorker(src, dest, options, callback) {
199
- (0, _which.default)('tsc', options, function(_err, tsc) {
199
+ (0, _modulewhich.default)('tsc', options, function(_err, tsc) {
200
200
  var tsconfig = options.tsconfig ? options.tsconfig : _gettsconfigcompat.getTsconfig(src);
201
201
  var matcher = (0, _createMatcher.default)(tsconfig);
202
202
  var tsArgs = [];
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/workers/transformTypes.ts"],"sourcesContent":["import path from 'path';\nimport spawn from 'cross-spawn-cb';\nimport Iterator from 'fs-iterator';\nimport * as getTS from 'get-tsconfig-compat';\nimport rimraf2 from 'rimraf2';\nimport which from '../lib/which.js';\n\nimport { SKIPS, typeFileRegEx } from '../constants.js';\nimport createMatcher from '../createMatcher.js';\n\nexport default function transformTypesWorker(src, dest, options, callback) {\n which('tsc', options, (_err, tsc) => {\n const tsconfig = options.tsconfig ? options.tsconfig : getTS.getTsconfig(src);\n const matcher = createMatcher(tsconfig);\n\n const tsArgs = [];\n for (const key in tsconfig.config.compilerOptions) {\n const value = tsconfig.config.compilerOptions[key];\n tsArgs.push(`--${key}`);\n tsArgs.push(Array.isArray(value) ? value.join(',') : value);\n }\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 if (entries.length === 0) return callback();\n const results = entries.map((entry) => {\n const result = { from: path.relative(src, entry.fullPath), to: '' };\n const dirname = path.dirname(result.from);\n const basename = path.basename(result.from);\n let ext = path.extname(basename);\n ext = ext.replace('sx', 's');\n ext = ext.replace('js', 'ts');\n result.to = path.join(dirname === '.' ? '' : dirname, `${basename.replace(/\\.[^/.]+$/, '')}.d${ext}`);\n return result;\n });\n const args = [tsc, ...results.map((x) => path.resolve(src, x.from)), '--declaration', '--emitDeclarationOnly', '--outDir', dest, ...tsArgs];\n spawn(args[0], args.slice(1), { stdio: 'inherit' }, (err) => (err ? callback(err) : callback(null, results)));\n }\n );\n });\n });\n}\n\n// import fs from 'fs';\n// import path from 'path';\n// import Iterator from 'fs-iterator';\n// import * as getTS from 'get-tsconfig-compat';\n// import mkdirp from 'mkdirp-classic';\n// import Queue from 'queue-cb';\n// import rimraf2 from 'rimraf2';\n// import { type SourceFile, WriteFileCallbackData } from 'typescript';\n\n// // @ts-ignore\n// import lazy from '../lib/lazy.cjs';\n// const lazyTS = lazy('typescript');\n\n// import { SKIPS, typeFileRegEx } from '../constants.js';\n// import createMatcher from '../createMatcher.js';\n\n// export default function transformTypesWorker(src, dest, 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 copies = [];\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 copies.push(entry);\n// if (SKIPS.indexOf(entry.basename) >= 0) return;\n// entries.push(entry);\n// },\n// (err) => {\n// if (err) return callback(err);\n// if (entries.length === 0) return callback();\n\n// const ts = lazyTS();\n// const options = {\n// ...(tsconfig.compilerOptions || {}),\n// allowJs: true,\n// declaration: true,\n// emitDeclarationOnly: true,\n// };\n// const generated = {};\n// const host = ts.createCompilerHost(options);\n// host.writeFile = (filePath: string, contents: string, writeByteOrderMark: boolean, onError?: (message: string) => void, sourceFiles?: readonly SourceFile[], data?: WriteFileCallbackData) => {\n// // const destPath = path.resolve(dest, path.relative(src, filePath));\n// // mkdirp.sync(path.dirname(destPath))\n// // fs.writeFileSync(destPath, contents, 'utf8');\n// generated[sourceFiles[0].fileName] = { filePath, contents };\n// };\n\n// // Prepare and emit the d.ts files\n// const program = ts.createProgram(\n// entries.map((entry) => entry.fullPath),\n// options,\n// host\n// );\n// program.emit();\n\n// const results = entries\n// .filter((entry) => generated[entry.fullPath] !== undefined)\n// .map((entry) => {\n// return { from: entry.path, to: path.relative(src, generated[entry.fullPath].filePath) };\n// });\n// copies.forEach((entry) => results.push({ from: entry.path, to: entry.path }));\n\n// callback(null, results)\n\n// // function createFolders(cb) {\n// // // return cb();\n// // const queue = new Queue();\n// // entries.concat(copies)\n// // .map((x) => path.resolve(dest, path.dirname(x.path)))\n// // .sort((a, b) => b.localeCompare(a))\n// // .reduce((m, x) => (m.some((y) => y.startsWith(x)) ? m : m.concat(x)), [])\n// // .forEach((x) => {\n// // queue.defer(mkdirp.bind(null, x));\n// // });\n// // queue.await(cb);\n// // }\n// // function writeGenerated(cb) {\n// // const queue = new Queue();\n// // entries\n// // .filter((entry) => generated[entry.fullPath] !== undefined)\n// // .forEach((entry) => {\n// // const record = generated[entry.fullPath];\n// // const destPath = path.resolve(dest, path.relative(src, record.filePath));\n// // queue.defer(fs.writeFile.bind(null, destPath, record.contents, 'utf8'));\n// // });\n// // queue.await(cb);\n// // }\n\n// // function copyTypes(cb) {\n// // const queue = new Queue();\n// // copies.forEach((entry) => {\n// // const destPath = path.resolve(dest, entry.path);\n// // queue.defer((cb) => {\n// // fs.readFile(entry.fullPath, (err, contents) => {\n// // err ? callback(err) : fs.writeFile(destPath, contents, cb);\n// // });\n// // });\n// // });\n// // queue.await(cb);\n// // }\n\n// // createFolders((err) => {\n// // if (err) return callback(err);\n// // const queue = new Queue();\n// // queue.defer(writeGenerated.bind(null));\n// // queue.defer(copyTypes.bind(null));\n// // queue.await((err) => {\n// // err ? callback(err) : callback(null, results);\n// // });\n// // });\n// }\n// );\n// });\n// }\n"],"names":["transformTypesWorker","src","dest","options","callback","which","_err","tsc","tsconfig","getTS","getTsconfig","matcher","createMatcher","tsArgs","key","config","compilerOptions","value","push","Array","isArray","join","rimraf2","disableGlob","entries","iterator","Iterator","forEach","entry","stats","isFile","fullPath","typeFileRegEx","test","basename","SKIPS","indexOf","err","length","results","map","result","from","path","relative","to","dirname","ext","extname","replace","args","x","resolve","spawn","slice","stdio"],"mappings":";;;;+BAUA,UA4CA,uBAAuB;CACvB,2BAA2B;CAC3B,sCAAsC;CACtC,gDAAgD;CAChD,uCAAuC;CACvC,gCAAgC;CAChC,iCAAiC;CACjC,uEAAuE;CAEvE,gBAAgB;CAChB,sCAAsC;CACtC,qCAAqC;CAErC,0DAA0D;CAC1D,mDAAmD;CAEnD,+EAA+E;CAC/E,mFAAmF;CACnF,6CAA6C;CAE7C,iDAAiD;CACjD,0BAA0B;CAC1B,yBAAyB;CACzB,0CAA0C;CAC1C,wBAAwB;CACxB,qBAAqB;CACrB,6CAA6C;CAC7C,gDAAgD;CAChD,6EAA6E;CAC7E,0DAA0D;CAC1D,+BAA+B;CAC/B,WAAW;CACX,mBAAmB;CACnB,yCAAyC;CACzC,uDAAuD;CAEvD,+BAA+B;CAC/B,4BAA4B;CAC5B,iDAAiD;CACjD,2BAA2B;CAC3B,+BAA+B;CAC/B,uCAAuC;CACvC,aAAa;CACb,gCAAgC;CAChC,uDAAuD;CACvD,0MAA0M;CAC1M,kFAAkF;CAClF,mDAAmD;CACnD,6DAA6D;CAC7D,yEAAyE;CACzE,aAAa;CAEb,6CAA6C;CAC7C,4CAA4C;CAC5C,oDAAoD;CACpD,qBAAqB;CACrB,iBAAiB;CACjB,aAAa;CACb,0BAA0B;CAE1B,kCAAkC;CAClC,wEAAwE;CACxE,8BAA8B;CAC9B,uGAAuG;CACvG,gBAAgB;CAChB,yFAAyF;CAEzF,kCAAkC;CAElC,0CAA0C;CAC1C,+BAA+B;CAC/B,0CAA0C;CAC1C,sCAAsC;CACtC,uEAAuE;CACvE,qDAAqD;CACrD,2FAA2F;CAC3F,mCAAmC;CACnC,sDAAsD;CACtD,qBAAqB;CACrB,gCAAgC;CAChC,eAAe;CACf,2CAA2C;CAC3C,0CAA0C;CAC1C,uBAAuB;CACvB,6EAA6E;CAC7E,uCAAuC;CACvC,6DAA6D;CAC7D,6FAA6F;CAC7F,4FAA4F;CAC5F,qBAAqB;CACrB,gCAAgC;CAChC,eAAe;CAEf,sCAAsC;CACtC,0CAA0C;CAC1C,2CAA2C;CAC3C,kEAAkE;CAClE,uCAAuC;CACvC,oEAAoE;CACpE,iFAAiF;CACjF,uBAAuB;CACvB,qBAAqB;CACrB,mBAAmB;CACnB,gCAAgC;CAChC,eAAe;CAEf,sCAAsC;CACtC,8CAA8C;CAC9C,0CAA0C;CAC1C,uDAAuD;CACvD,kDAAkD;CAClD,sCAAsC;CACtC,gEAAgE;CAChE,mBAAmB;CACnB,iBAAiB;CACjB,UAAU;CACV,SAAS;CACT,QAAQ;CACR,IAAI;;;;eAlKoBA;;;2DAVP;mEACC;iEACG;yEACE;8DACH;4DACF;yBAEmB;oEACX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEX,SAASA,qBAAqBC,GAAG,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACvEC,IAAAA,cAAK,EAAC,OAAOF,SAAS,SAACG,MAAMC;QAC3B,IAAMC,WAAWL,QAAQK,QAAQ,GAAGL,QAAQK,QAAQ,GAAGC,mBAAMC,WAAW,CAACT;QACzE,IAAMU,UAAUC,IAAAA,sBAAa,EAACJ;QAE9B,IAAMK,SAAS,EAAE;QACjB,IAAK,IAAMC,OAAON,SAASO,MAAM,CAACC,eAAe,CAAE;YACjD,IAAMC,QAAQT,SAASO,MAAM,CAACC,eAAe,CAACF,IAAI;YAClDD,OAAOK,IAAI,CAAC,AAAC,KAAQ,OAAJJ;YACjBD,OAAOK,IAAI,CAACC,MAAMC,OAAO,CAACH,SAASA,MAAMI,IAAI,CAAC,OAAOJ;QACvD;QAEAK,IAAAA,gBAAO,EAACpB,MAAM;YAAEqB,aAAa;QAAK,GAAG;YACnC,IAAMC,UAAU,EAAE;YAClB,IAAMC,WAAW,IAAIC,mBAAQ,CAACzB;YAC9BwB,SAASE,OAAO,CACd,SAACC;gBACC,IAAI,CAACA,MAAMC,KAAK,CAACC,MAAM,IAAI;gBAC3B,IAAI,CAACnB,QAAQiB,MAAMG,QAAQ,GAAG;gBAC9B,IAAIC,wBAAa,CAACC,IAAI,CAACL,MAAMM,QAAQ,GAAG;gBACxC,IAAIC,gBAAK,CAACC,OAAO,CAACR,MAAMM,QAAQ,KAAK,GAAG;gBACxCV,QAAQN,IAAI,CAACU;YACf,GACA,SAACS;gBACC,IAAIA,KAAK,OAAOjC,SAASiC;gBACzB,IAAIb,QAAQc,MAAM,KAAK,GAAG,OAAOlC;gBACjC,IAAMmC,UAAUf,QAAQgB,GAAG,CAAC,SAACZ;oBAC3B,IAAMa,SAAS;wBAAEC,MAAMC,aAAI,CAACC,QAAQ,CAAC3C,KAAK2B,MAAMG,QAAQ;wBAAGc,IAAI;oBAAG;oBAClE,IAAMC,UAAUH,aAAI,CAACG,OAAO,CAACL,OAAOC,IAAI;oBACxC,IAAMR,WAAWS,aAAI,CAACT,QAAQ,CAACO,OAAOC,IAAI;oBAC1C,IAAIK,MAAMJ,aAAI,CAACK,OAAO,CAACd;oBACvBa,MAAMA,IAAIE,OAAO,CAAC,MAAM;oBACxBF,MAAMA,IAAIE,OAAO,CAAC,MAAM;oBACxBR,OAAOI,EAAE,GAAGF,aAAI,CAACtB,IAAI,CAACyB,YAAY,MAAM,KAAKA,SAAS,AAAC,GAAwCC,OAAtCb,SAASe,OAAO,CAAC,aAAa,KAAI,MAAQ,OAAJF;oBAC/F,OAAON;gBACT;gBACA,IAAMS,OAAO;oBAAC3C;iBAA6H,CAA9H,OAAM,qBAAGgC,QAAQC,GAAG,CAAC,SAACW;2BAAMR,aAAI,CAACS,OAAO,CAACnD,KAAKkD,EAAET,IAAI;qBAApD;oBAAwD;oBAAiB;oBAAyB;oBAAYxC;iBAAgB,EAAV,qBAAGW;gBACpIwC,IAAAA,qBAAK,EAACH,IAAI,CAAC,EAAE,EAAEA,KAAKI,KAAK,CAAC,IAAI;oBAAEC,OAAO;gBAAU,GAAG,SAAClB;2BAASA,MAAMjC,SAASiC,OAAOjC,SAAS,MAAMmC;;YACrG;QAEJ;IACF;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/workers/transformTypes.ts"],"sourcesContent":["import path from 'path';\nimport spawn from 'cross-spawn-cb';\nimport Iterator from 'fs-iterator';\nimport * as getTS from 'get-tsconfig-compat';\nimport which from 'module-which';\nimport rimraf2 from 'rimraf2';\n\nimport { SKIPS, typeFileRegEx } from '../constants.js';\nimport createMatcher from '../createMatcher.js';\n\nexport default function transformTypesWorker(src, dest, options, callback) {\n which('tsc', options, (_err, tsc) => {\n const tsconfig = options.tsconfig ? options.tsconfig : getTS.getTsconfig(src);\n const matcher = createMatcher(tsconfig);\n\n const tsArgs = [];\n for (const key in tsconfig.config.compilerOptions) {\n const value = tsconfig.config.compilerOptions[key];\n tsArgs.push(`--${key}`);\n tsArgs.push(Array.isArray(value) ? value.join(',') : value);\n }\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 if (entries.length === 0) return callback();\n const results = entries.map((entry) => {\n const result = { from: path.relative(src, entry.fullPath), to: '' };\n const dirname = path.dirname(result.from);\n const basename = path.basename(result.from);\n let ext = path.extname(basename);\n ext = ext.replace('sx', 's');\n ext = ext.replace('js', 'ts');\n result.to = path.join(dirname === '.' ? '' : dirname, `${basename.replace(/\\.[^/.]+$/, '')}.d${ext}`);\n return result;\n });\n const args = [tsc, ...results.map((x) => path.resolve(src, x.from)), '--declaration', '--emitDeclarationOnly', '--outDir', dest, ...tsArgs];\n spawn(args[0], args.slice(1), { stdio: 'inherit' }, (err) => (err ? callback(err) : callback(null, results)));\n }\n );\n });\n });\n}\n\n// import fs from 'fs';\n// import path from 'path';\n// import Iterator from 'fs-iterator';\n// import * as getTS from 'get-tsconfig-compat';\n// import mkdirp from 'mkdirp-classic';\n// import Queue from 'queue-cb';\n// import rimraf2 from 'rimraf2';\n// import { type SourceFile, WriteFileCallbackData } from 'typescript';\n\n// // @ts-ignore\n// import lazy from '../lib/lazy.cjs';\n// const lazyTS = lazy('typescript');\n\n// import { SKIPS, typeFileRegEx } from '../constants.js';\n// import createMatcher from '../createMatcher.js';\n\n// export default function transformTypesWorker(src, dest, 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 copies = [];\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 copies.push(entry);\n// if (SKIPS.indexOf(entry.basename) >= 0) return;\n// entries.push(entry);\n// },\n// (err) => {\n// if (err) return callback(err);\n// if (entries.length === 0) return callback();\n\n// const ts = lazyTS();\n// const options = {\n// ...(tsconfig.compilerOptions || {}),\n// allowJs: true,\n// declaration: true,\n// emitDeclarationOnly: true,\n// };\n// const generated = {};\n// const host = ts.createCompilerHost(options);\n// host.writeFile = (filePath: string, contents: string, writeByteOrderMark: boolean, onError?: (message: string) => void, sourceFiles?: readonly SourceFile[], data?: WriteFileCallbackData) => {\n// // const destPath = path.resolve(dest, path.relative(src, filePath));\n// // mkdirp.sync(path.dirname(destPath))\n// // fs.writeFileSync(destPath, contents, 'utf8');\n// generated[sourceFiles[0].fileName] = { filePath, contents };\n// };\n\n// // Prepare and emit the d.ts files\n// const program = ts.createProgram(\n// entries.map((entry) => entry.fullPath),\n// options,\n// host\n// );\n// program.emit();\n\n// const results = entries\n// .filter((entry) => generated[entry.fullPath] !== undefined)\n// .map((entry) => {\n// return { from: entry.path, to: path.relative(src, generated[entry.fullPath].filePath) };\n// });\n// copies.forEach((entry) => results.push({ from: entry.path, to: entry.path }));\n\n// callback(null, results)\n\n// // function createFolders(cb) {\n// // // return cb();\n// // const queue = new Queue();\n// // entries.concat(copies)\n// // .map((x) => path.resolve(dest, path.dirname(x.path)))\n// // .sort((a, b) => b.localeCompare(a))\n// // .reduce((m, x) => (m.some((y) => y.startsWith(x)) ? m : m.concat(x)), [])\n// // .forEach((x) => {\n// // queue.defer(mkdirp.bind(null, x));\n// // });\n// // queue.await(cb);\n// // }\n// // function writeGenerated(cb) {\n// // const queue = new Queue();\n// // entries\n// // .filter((entry) => generated[entry.fullPath] !== undefined)\n// // .forEach((entry) => {\n// // const record = generated[entry.fullPath];\n// // const destPath = path.resolve(dest, path.relative(src, record.filePath));\n// // queue.defer(fs.writeFile.bind(null, destPath, record.contents, 'utf8'));\n// // });\n// // queue.await(cb);\n// // }\n\n// // function copyTypes(cb) {\n// // const queue = new Queue();\n// // copies.forEach((entry) => {\n// // const destPath = path.resolve(dest, entry.path);\n// // queue.defer((cb) => {\n// // fs.readFile(entry.fullPath, (err, contents) => {\n// // err ? callback(err) : fs.writeFile(destPath, contents, cb);\n// // });\n// // });\n// // });\n// // queue.await(cb);\n// // }\n\n// // createFolders((err) => {\n// // if (err) return callback(err);\n// // const queue = new Queue();\n// // queue.defer(writeGenerated.bind(null));\n// // queue.defer(copyTypes.bind(null));\n// // queue.await((err) => {\n// // err ? callback(err) : callback(null, results);\n// // });\n// // });\n// }\n// );\n// });\n// }\n"],"names":["transformTypesWorker","src","dest","options","callback","which","_err","tsc","tsconfig","getTS","getTsconfig","matcher","createMatcher","tsArgs","key","config","compilerOptions","value","push","Array","isArray","join","rimraf2","disableGlob","entries","iterator","Iterator","forEach","entry","stats","isFile","fullPath","typeFileRegEx","test","basename","SKIPS","indexOf","err","length","results","map","result","from","path","relative","to","dirname","ext","extname","replace","args","x","resolve","spawn","slice","stdio"],"mappings":"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"}
@@ -1 +1 @@
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":["moduleRegEx","typeFileRegEx","SKIPS"],"mappings":"AAAA,OAAO,MAAMA,cAAc,+BAA+B;AAC1D,OAAO,MAAMC,gBAAgB,sBAAsB;AACnD,OAAO,MAAMC,QAAQ;IAAC;CAAY,CAAC"}
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":["moduleRegEx","typeFileRegEx","SKIPS"],"mappings":"AAAA,OAAO,MAAMA,cAAc,+BAA+B;AAC1D,OAAO,MAAMC,gBAAgB,sBAAsB;AACnD,OAAO,MAAMC,QAAQ;IAAC;CAAY,CAAC"}
@@ -1 +1 @@
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":["minimatch","path","unixify","createMatcher","tsconfig","undefined","Error","config","tsconfigPath","dirname","matchFn","condition","pattern","isAbsolute","startsWith","join","match","filePath","includes","include","map","excludes","exclude","matcher","endsWith","i","length","j"],"mappings":"AAAA,OAAOA,eAAe,YAAY;AAClC,OAAOC,UAAU,aAAa;AAC9B,OAAOC,aAAa,UAAU;AAE9B;;;CAGC,GACD,eAAe,SAASC,cAAcC,QAAQ;IAC5C,IAAIA,aAAaC,WAAW,MAAM,IAAIC,MAAM;IAC5C,IAAIF,SAASH,IAAI,KAAKI,WAAW,MAAM,IAAIC,MAAM;IACjD,IAAIF,SAASG,MAAM,KAAKF,WAAW,MAAM,IAAIC,MAAM;IAEnD,MAAME,eAAeP,KAAKQ,OAAO,CAACP,QAAQE,SAASH,IAAI;IAEvD,SAASS,QAAQC,SAAS;QACxB,IAAIC,UAAUV,QAAQS;QACtB,IAAI,CAACV,KAAKY,UAAU,CAACD,YAAY,CAACA,QAAQE,UAAU,CAAC,MAAMF,UAAUX,KAAKc,IAAI,CAACP,cAAcI;QAE7F,OAAO,SAASI,MAAMC,QAAQ;YAC5B,OAAOA,SAASH,UAAU,CAACF,YAAYZ,UAAUiB,UAAUL;QAC7D;IACF;IAEA,MAAMM,WAAW,AAACd,CAAAA,SAASG,MAAM,CAACY,OAAO,IAAI,EAAE,AAAD,EAAGC,GAAG,CAACV;IACrD,MAAMW,WAAW,AAACjB,CAAAA,SAASG,MAAM,CAACe,OAAO,IAAI,EAAE,AAAD,EAAGF,GAAG,CAACV;IAErD,OAAO,SAASa,QAAQN,QAAQ;QAC9B,IAAIA,SAASO,QAAQ,CAAC,UAAU,OAAO;QAEvCP,WAAWf,QAAQe;QACnB,IAAK,IAAIQ,IAAI,GAAGA,IAAIJ,SAASK,MAAM,EAAE,EAAED,EAAG;YACxC,IAAIJ,QAAQ,CAACI,EAAE,CAACR,WAAW,OAAO;QACpC;QACA,IAAK,IAAIU,IAAI,GAAGA,IAAIT,SAASQ,MAAM,EAAE,EAAEC,EAAG;YACxC,IAAIT,QAAQ,CAACS,EAAE,CAACV,WAAW,OAAO;QACpC;QACA,OAAO,CAACC,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":["minimatch","path","unixify","createMatcher","tsconfig","undefined","Error","config","tsconfigPath","dirname","matchFn","condition","pattern","isAbsolute","startsWith","join","match","filePath","includes","include","map","excludes","exclude","matcher","endsWith","i","length","j"],"mappings":"AAAA,OAAOA,eAAe,YAAY;AAClC,OAAOC,UAAU,aAAa;AAC9B,OAAOC,aAAa,UAAU;AAE9B;;;CAGC,GACD,eAAe,SAASC,cAAcC,QAAQ;IAC5C,IAAIA,aAAaC,WAAW,MAAM,IAAIC,MAAM;IAC5C,IAAIF,SAASH,IAAI,KAAKI,WAAW,MAAM,IAAIC,MAAM;IACjD,IAAIF,SAASG,MAAM,KAAKF,WAAW,MAAM,IAAIC,MAAM;IAEnD,MAAME,eAAeP,KAAKQ,OAAO,CAACP,QAAQE,SAASH,IAAI;IAEvD,SAASS,QAAQC,SAAS;QACxB,IAAIC,UAAUV,QAAQS;QACtB,IAAI,CAACV,KAAKY,UAAU,CAACD,YAAY,CAACA,QAAQE,UAAU,CAAC,MAAMF,UAAUX,KAAKc,IAAI,CAACP,cAAcI;QAE7F,OAAO,SAASI,MAAMC,QAAQ;YAC5B,OAAOA,SAASH,UAAU,CAACF,YAAYZ,UAAUiB,UAAUL;QAC7D;IACF;IAEA,MAAMM,WAAW,AAACd,CAAAA,SAASG,MAAM,CAACY,OAAO,IAAI,EAAE,AAAD,EAAGC,GAAG,CAACV;IACrD,MAAMW,WAAW,AAACjB,CAAAA,SAASG,MAAM,CAACe,OAAO,IAAI,EAAE,AAAD,EAAGF,GAAG,CAACV;IAErD,OAAO,SAASa,QAAQN,QAAQ;QAC9B,IAAIA,SAASO,QAAQ,CAAC,UAAU,OAAO;QAEvCP,WAAWf,QAAQe;QACnB,IAAK,IAAIQ,IAAI,GAAGA,IAAIJ,SAASK,MAAM,EAAE,EAAED,EAAG;YACxC,IAAIJ,QAAQ,CAACI,EAAE,CAACR,WAAW,OAAO;QACpC;QACA,IAAK,IAAIU,IAAI,GAAGA,IAAIT,SAASQ,MAAM,EAAE,EAAEC,EAAG;YACxC,IAAIT,QAAQ,CAACS,EAAE,CAACV,WAAW,OAAO;QACpC;QACA,OAAO,CAACC,SAASQ,MAAM;IACzB;AACF"}
@@ -1 +1 @@
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":"AAAA,eAAe;IAAC;IAAO;IAAQ;IAAQ;IAAQ;IAAO;IAAQ;IAAQ;IAAQ;IAAQ;CAAM,CAAC"}
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":"AAAA,eAAe;IAAC;IAAO;IAAQ;IAAQ;IAAQ;IAAO;IAAQ;IAAQ;IAAQ;IAAQ;CAAM,CAAC"}
@@ -1 +1 @@
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":["default","createMatcher","constants","extensions","resolveFileSync","toPath","transformFile","transformDirectory","transformSync","transformTypes"],"mappings":"AACA,SAASA,WAAWC,aAAa,QAAQ,qBAAqB;AAC9D,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,SAASF,WAAWG,UAAU,QAAQ,kBAAkB;AACxD,SAASH,WAAWI,eAAe,QAAQ,uBAAuB;AAClE,SAASJ,WAAWK,MAAM,QAAQ,cAAc;AAEhD,SAASL,WAAWM,aAAa,QAAQ,qBAAqB;AAC9D,SAASN,WAAWO,kBAAkB,QAAQ,0BAA0B;AACxE,SAASP,WAAWQ,aAAa,QAAQ,qBAAqB;AAC9D,SAASR,WAAWS,cAAc,QAAQ,sBAAsB"}
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":["default","createMatcher","constants","extensions","resolveFileSync","toPath","transformFile","transformDirectory","transformSync","transformTypes"],"mappings":"AACA,SAASA,WAAWC,aAAa,QAAQ,qBAAqB;AAC9D,OAAO,KAAKC,SAAS,MAAM,iBAAiB;AAC5C,SAASF,WAAWG,UAAU,QAAQ,kBAAkB;AACxD,SAASH,WAAWI,eAAe,QAAQ,uBAAuB;AAClE,SAASJ,WAAWK,MAAM,QAAQ,cAAc;AAEhD,SAASL,WAAWM,aAAa,QAAQ,qBAAqB;AAC9D,SAASN,WAAWO,kBAAkB,QAAQ,0BAA0B;AACxE,SAASP,WAAWQ,aAAa,QAAQ,qBAAqB;AAC9D,SAASR,WAAWS,cAAc,QAAQ,sBAAsB"}
@@ -1 +1 @@
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":["url","fileURLToPathPolyfill","fileURL","path","pathname","startsWith","Error","decodeURIComponent","substring","fileURLToPath"],"mappings":"AAAA,OAAOA,SAAS,MAAM;AAEtB,SAASC,sBAAsBC,OAAO;IACpC,MAAMC,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;AAEA,eAAeR,IAAIS,aAAa,IAAIR,sBAAsB"}
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":["url","fileURLToPathPolyfill","fileURL","path","pathname","startsWith","Error","decodeURIComponent","substring","fileURLToPath"],"mappings":"AAAA,OAAOA,SAAS,MAAM;AAEtB,SAASC,sBAAsBC,OAAO;IACpC,MAAMC,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;AAEA,eAAeR,IAAIS,aAAa,IAAIR,sBAAsB"}
@@ -1 +1 @@
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"}
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"}
@@ -1 +1 @@
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":["fs","path","installModule","Queue","resolve","resolveOnce","installSWCBindings","callback","swcPackagePath","sync","swcDir","dirname","optionalDependencies","JSON","parse","readFileSync","depKey","process","platform","arch","queue","Object","keys","filter","name","indexOf","map","defer","version","installString","await"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,mBAAmB,wBAAwB;AAClD,OAAOC,WAAW,WAAW;AAC7B,OAAOC,aAAa,UAAU;AAC9B,OAAOC,iBAAiB,kBAAkB;AAE1C,SAASC,mBAAmBC,QAAQ;IAClC,MAAMC,iBAAiBJ,QAAQK,IAAI,CAAC;IACpC,MAAMC,SAAST,KAAKU,OAAO,CAACV,KAAKU,OAAO,CAACH;IACzC,MAAM,EAAEI,oBAAoB,EAAE,GAAGC,KAAKC,KAAK,CAACd,GAAGe,YAAY,CAACP,gBAAgB;IAC5E,MAAMQ,SAAS,GAAGC,QAAQC,QAAQ,CAAC,CAAC,EAAED,QAAQE,IAAI,EAAE;IAEpD,MAAMC,QAAQ,IAAIjB;IAClBkB,OAAOC,IAAI,CAACV,sBACTW,MAAM,CAAC,CAACC,OAASA,KAAKC,OAAO,CAACT,WAAW,GACzCU,GAAG,CAAC,CAACF;QACJJ,MAAMO,KAAK,CAAC,CAACpB;YACX,MAAMqB,UAAUhB,oBAAoB,CAACY,KAAK;YAC1C,MAAMK,gBAAgB,GAAGL,OAAOI,UAAU,CAAC,CAAC,EAAEA,SAAS,GAAG,IAAI;YAC9D1B,cAAc2B,eAAe5B,KAAKU,OAAO,CAACD,SAASH;QACrD;IACF;IACFa,MAAMU,KAAK,CAACvB;AACd;AAEA,eAAeF,YAAYC,oBAAoB"}
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":["fs","path","installModule","Queue","resolve","resolveOnce","installSWCBindings","callback","swcPackagePath","sync","swcDir","dirname","optionalDependencies","JSON","parse","readFileSync","depKey","process","platform","arch","queue","Object","keys","filter","name","indexOf","map","defer","version","installString","await"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,mBAAmB,wBAAwB;AAClD,OAAOC,WAAW,WAAW;AAC7B,OAAOC,aAAa,UAAU;AAC9B,OAAOC,iBAAiB,kBAAkB;AAE1C,SAASC,mBAAmBC,QAAQ;IAClC,MAAMC,iBAAiBJ,QAAQK,IAAI,CAAC;IACpC,MAAMC,SAAST,KAAKU,OAAO,CAACV,KAAKU,OAAO,CAACH;IACzC,MAAM,EAAEI,oBAAoB,EAAE,GAAGC,KAAKC,KAAK,CAACd,GAAGe,YAAY,CAACP,gBAAgB;IAC5E,MAAMQ,SAAS,GAAGC,QAAQC,QAAQ,CAAC,CAAC,EAAED,QAAQE,IAAI,EAAE;IAEpD,MAAMC,QAAQ,IAAIjB;IAClBkB,OAAOC,IAAI,CAACV,sBACTW,MAAM,CAAC,CAACC,OAASA,KAAKC,OAAO,CAACT,WAAW,GACzCU,GAAG,CAAC,CAACF;QACJJ,MAAMO,KAAK,CAAC,CAACpB;YACX,MAAMqB,UAAUhB,oBAAoB,CAACY,KAAK;YAC1C,MAAMK,gBAAgB,GAAGL,OAAOI,UAAU,CAAC,CAAC,EAAEA,SAAS,GAAG,IAAI;YAC9D1B,cAAc2B,eAAe5B,KAAKU,OAAO,CAACD,SAASH;QACrD;IACF;IACFa,MAAMU,KAAK,CAACvB;AACd;AAEA,eAAeF,YAAYC,oBAAoB"}
@@ -1 +1 @@
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":["path","swcInstallBindings","lazy","lazyTS","lazySWC","lazyTranspiler","swcPrepareOptions","tsconfig","callback","err","ts","swc","transpiler","parsed","parseJsonConfigFileContent","config","sys","dirname","createSwcOptions","options","undefined"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,wBAAwB,0BAA0B;AAEzD,aAAa;AACb,OAAOC,UAAU,aAAa;AAC9B,MAAMC,SAASD,KAAK;AACpB,MAAME,UAAUF,KAAK;AACrB,MAAMG,iBAAiBH,KAAK;AAI5B,eAAe,SAASI,kBAAkBC,QAAwB,EAAEC,QAAQ;IAC1EP,mBAAmB,CAACQ;QAClB,IAAIA,KAAK,OAAOD,SAASC;QAEzB,IAAI;YACF,MAAMC,KAAKP;YACX,MAAMQ,MAAMP;YACZ,MAAMQ,aAAaP;YACnB,MAAMQ,SAASH,GAAGI,0BAA0B,CAACP,SAASQ,MAAM,EAAEL,GAAGM,GAAG,EAAEhB,KAAKiB,OAAO,CAACV,SAASP,IAAI;YAChGQ,SAAS,MAAMI,WAAWM,gBAAgB,CAACL,OAAOM,OAAO,EAAEC,WAAWT,KAAK;QAC7E,EAAE,OAAOF,KAAK;YACZD,SAASC;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":["path","swcInstallBindings","lazy","lazyTS","lazySWC","lazyTranspiler","swcPrepareOptions","tsconfig","callback","err","ts","swc","transpiler","parsed","parseJsonConfigFileContent","config","sys","dirname","createSwcOptions","options","undefined"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,wBAAwB,0BAA0B;AAEzD,aAAa;AACb,OAAOC,UAAU,aAAa;AAC9B,MAAMC,SAASD,KAAK;AACpB,MAAME,UAAUF,KAAK;AACrB,MAAMG,iBAAiBH,KAAK;AAI5B,eAAe,SAASI,kBAAkBC,QAAwB,EAAEC,QAAQ;IAC1EP,mBAAmB,CAACQ;QAClB,IAAIA,KAAK,OAAOD,SAASC;QAEzB,IAAI;YACF,MAAMC,KAAKP;YACX,MAAMQ,MAAMP;YACZ,MAAMQ,aAAaP;YACnB,MAAMQ,SAASH,GAAGI,0BAA0B,CAACP,SAASQ,MAAM,EAAEL,GAAGM,GAAG,EAAEhB,KAAKiB,OAAO,CAACV,SAASP,IAAI;YAChGQ,SAAS,MAAMI,WAAWM,gBAAgB,CAACL,OAAOM,OAAO,EAAEC,WAAWT,KAAK;QAC7E,EAAE,OAAOF,KAAK;YACZD,SAASC;QACX;IACF;AACF"}
@@ -1 +1 @@
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":["lazy","call","wrapWorker","workerPath","workerWrapper","version","args","apply","callback","pop","callbacks","err"],"mappings":"AAAA,aAAa;AACb,OAAOA,UAAU,aAAa;AAC9B,MAAMC,OAAOD,KAAK;AAElB,eAAe,SAASE,WAAWC,UAAkB;IACnD,OAAO,SAASC,cAAcC,OAAO,EAAE,GAAGC,IAAI;QAC5C,IAAID,YAAY,SAAS,OAAOL,KAAKG,cAAcI,KAAK,CAAC,MAAMD;QAE/D,MAAME,WAAWF,KAAKG,GAAG;QACzB,IAAI;YACFD,SAAS,MAAMP,OAAO;gBAAEI;gBAASK,WAAW;YAAK,GAAGP,eAAeG;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":["lazy","call","wrapWorker","workerPath","workerWrapper","version","args","apply","callback","pop","callbacks","err"],"mappings":"AAAA,aAAa;AACb,OAAOA,UAAU,aAAa;AAC9B,MAAMC,OAAOD,KAAK;AAElB,eAAe,SAASE,WAAWC,UAAkB;IACnD,OAAO,SAASC,cAAcC,OAAO,EAAE,GAAGC,IAAI;QAC5C,IAAID,YAAY,SAAS,OAAOL,KAAKG,cAAcI,KAAK,CAAC,MAAMD;QAE/D,MAAME,WAAWF,KAAKG,GAAG;QACzB,IAAI;YACFD,SAAS,MAAMP,OAAO;gBAAEI;gBAASK,WAAW;YAAK,GAAGP,eAAeG;QACrE,EAAE,OAAOK,KAAK;YACZH,SAASG;QACX;IACF;AACF"}
@@ -1 +1 @@
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":["lazy","call","wrapWorkerSync","workerPath","workerWrapperSync","version","args","apply","callbacks"],"mappings":"AAAA,aAAa;AACb,OAAOA,UAAU,aAAa;AAC9B,MAAMC,OAAOD,KAAK;AAElB,eAAe,SAASE,eAAeC,UAAkB;IACvD,OAAO,SAASC,kBAAkBC,OAAO,EAAE,GAAGC,IAAI;QAChD,IAAID,YAAY,SAAS,OAAOL,KAAKG,cAAcI,KAAK,CAAC,MAAMD;QAC/D,OAAOL,OAAO;YAAEI;YAASG,WAAW;QAAK,GAAGL,eAAeG;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":["lazy","call","wrapWorkerSync","workerPath","workerWrapperSync","version","args","apply","callbacks"],"mappings":"AAAA,aAAa;AACb,OAAOA,UAAU,aAAa;AAC9B,MAAMC,OAAOD,KAAK;AAElB,eAAe,SAASE,eAAeC,UAAkB;IACvD,OAAO,SAASC,kBAAkBC,OAAO,EAAE,GAAGC,IAAI;QAChD,IAAID,YAAY,SAAS,OAAOL,KAAKG,cAAcI,KAAK,CAAC,MAAMD;QAC/D,OAAOL,OAAO;YAAEI;YAASG,WAAW;QAAK,GAAGL,eAAeG;IAC7D;AACF"}
@@ -1 +1 @@
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":["fs","path","moduleRegEx","typeFileRegEx","extensions","toPath","indexExtensions","map","x","resolveFileSync","specifier","context","filePath","ext","extname","stats","statSync","_err","isDirectory","endsWith","items","readdirSync","item","find","indexOf","join","test","fileName","basename","replace","dirname","startsWith"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,SAASC,WAAW,EAAEC,aAAa,QAAQ,iBAAiB;AAC5D,OAAOC,gBAAgB,kBAAkB;AACzC,OAAOC,YAAY,cAAc;AAGjC,MAAMC,kBAAkBF,WAAWG,GAAG,CAAC,CAACC,IAAM,CAAC,KAAK,EAAEA,GAAG;AAEzD,eAAe,SAASC,gBAAgBC,SAAiB,EAAEC,OAAiB;IAC1E,MAAMC,WAAWP,OAAOK,WAAWC;IACnC,MAAME,MAAMZ,KAAKa,OAAO,CAACF;IAEzB,IAAIG;IACJ,IAAI;QACFA,QAAQf,GAAGgB,QAAQ,CAACJ;IACtB,EAAE,OAAOK,MAAM,CAAC;IAEhB,+DAA+D;IAC/D,IAAI,AAACF,SAASA,MAAMG,WAAW,MAAOR,UAAUS,QAAQ,CAAC,MAAM;QAC7D,MAAMC,QAAQpB,GAAGqB,WAAW,CAACT;QAC7B,MAAMU,OAAOF,MAAMG,IAAI,CAAC,CAACf,IAAMF,gBAAgBkB,OAAO,CAAChB,MAAM;QAC7D,IAAIc,MAAM,OAAOrB,KAAKwB,IAAI,CAACb,UAAUU;IACvC,OAGK,IAAI,CAACP,SAAU,CAACF,OAAO,CAACX,YAAYwB,IAAI,CAAChB,YAAa;QACzD,MAAMiB,WAAW1B,KAAK2B,QAAQ,CAAChB,UAAUiB,OAAO,CAAC,gBAAgB;QACjE,MAAMT,QAAQpB,GAAGqB,WAAW,CAACpB,KAAK6B,OAAO,CAAClB;QAC1C,MAAMU,OAAOF,MAAMG,IAAI,CAAC,CAACf,IAAMA,EAAEuB,UAAU,CAACJ,aAAa,CAACxB,cAAcuB,IAAI,CAAClB,MAAMJ,WAAWoB,OAAO,CAACvB,KAAKa,OAAO,CAACN,OAAO;QAC1H,IAAIc,MAAM,OAAOrB,KAAKwB,IAAI,CAACxB,KAAK6B,OAAO,CAAClB,WAAWU;IACrD;IAEA,wBAAwB;IACxB,OAAOP,QAAQH,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":["fs","path","moduleRegEx","typeFileRegEx","extensions","toPath","indexExtensions","map","x","resolveFileSync","specifier","context","filePath","ext","extname","stats","statSync","_err","isDirectory","endsWith","items","readdirSync","item","find","indexOf","join","test","fileName","basename","replace","dirname","startsWith"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,SAASC,WAAW,EAAEC,aAAa,QAAQ,iBAAiB;AAC5D,OAAOC,gBAAgB,kBAAkB;AACzC,OAAOC,YAAY,cAAc;AAGjC,MAAMC,kBAAkBF,WAAWG,GAAG,CAAC,CAACC,IAAM,CAAC,KAAK,EAAEA,GAAG;AAEzD,eAAe,SAASC,gBAAgBC,SAAiB,EAAEC,OAAiB;IAC1E,MAAMC,WAAWP,OAAOK,WAAWC;IACnC,MAAME,MAAMZ,KAAKa,OAAO,CAACF;IAEzB,IAAIG;IACJ,IAAI;QACFA,QAAQf,GAAGgB,QAAQ,CAACJ;IACtB,EAAE,OAAOK,MAAM,CAAC;IAEhB,+DAA+D;IAC/D,IAAI,AAACF,SAASA,MAAMG,WAAW,MAAOR,UAAUS,QAAQ,CAAC,MAAM;QAC7D,MAAMC,QAAQpB,GAAGqB,WAAW,CAACT;QAC7B,MAAMU,OAAOF,MAAMG,IAAI,CAAC,CAACf,IAAMF,gBAAgBkB,OAAO,CAAChB,MAAM;QAC7D,IAAIc,MAAM,OAAOrB,KAAKwB,IAAI,CAACb,UAAUU;IACvC,OAGK,IAAI,CAACP,SAAU,CAACF,OAAO,CAACX,YAAYwB,IAAI,CAAChB,YAAa;QACzD,MAAMiB,WAAW1B,KAAK2B,QAAQ,CAAChB,UAAUiB,OAAO,CAAC,gBAAgB;QACjE,MAAMT,QAAQpB,GAAGqB,WAAW,CAACpB,KAAK6B,OAAO,CAAClB;QAC1C,MAAMU,OAAOF,MAAMG,IAAI,CAAC,CAACf,IAAMA,EAAEuB,UAAU,CAACJ,aAAa,CAACxB,cAAcuB,IAAI,CAAClB,MAAMJ,WAAWoB,OAAO,CAACvB,KAAKa,OAAO,CAACN,OAAO;QAC1H,IAAIc,MAAM,OAAOrB,KAAKwB,IAAI,CAACxB,KAAK6B,OAAO,CAAClB,WAAWU;IACrD;IAEA,wBAAwB;IACxB,OAAOP,QAAQH,WAAW;AAC5B"}
@@ -1 +1 @@
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":["fs","path","isAbsolute","resolve","moduleRegEx","fileURLToPath","getParentPath","context","parentPath","dirname","parentURL","toPath","process","cwd","specifier","startsWith","test","pkg","main","sync","basedir","extensions","packageFilter","json","dir","module","name","modulePath","mainPath","moduleResolved","relative","indexOf","replace","existsSync"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,gBAAgB,cAAc;AACrC,OAAOC,aAAa,UAAU;AAC9B,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,OAAOC,mBAAmB,yBAAyB;AAGnD,SAASC,cAAcC,OAAgB;IACrC,IAAIA,QAAQC,UAAU,EAAE,OAAOP,KAAKQ,OAAO,CAACF,QAAQC,UAAU;IAC9D,OAAOD,QAAQG,SAAS,GAAGT,KAAKQ,OAAO,CAACE,OAAOJ,QAAQG,SAAS,KAAKE,QAAQC,GAAG;AAClF;AAEA,eAAe,SAASF,OAAOG,SAAiB,EAAEP,OAAiB;IACjE,IAAIO,UAAUC,UAAU,CAAC,UAAU,OAAOV,cAAcS;IACxD,IAAIZ,WAAWY,YAAY,OAAOA;IAClC,IAAIA,SAAS,CAAC,EAAE,KAAK,KAAK;QACxB,MAAMN,aAAaD,UAAUD,cAAcC,WAAWK,QAAQC,GAAG;QACjE,OAAOZ,KAAKE,OAAO,CAACK,YAAYM;IAClC;IACA,IAAIV,YAAYY,IAAI,CAACF,YAAY;QAC/B,MAAMN,aAAaD,UAAUD,cAAcC,WAAWK,QAAQC,GAAG;QAEjE,IAAII,MAAM;QACV,MAAMC,OAAOf,QAAQgB,IAAI,CAACL,WAAW;YACnCM,SAASZ;YACTa,YAAY;gBAAC;gBAAO;gBAAS;gBAAS;aAAO;YAC7CC,eAAcC,IAAI,EAAEC,GAAG;gBACrBP,MAAM;oBAAEM;oBAAMC;gBAAI;gBAClB,OAAOD;YACT;QACF;QACA,IAAI,CAACN,OAAO,CAACA,IAAIM,IAAI,CAACE,MAAM,EAAE,OAAOP,MAAM,uBAAuB;QAClE,IAAID,IAAIM,IAAI,CAACG,IAAI,KAAKZ,WAAW,OAAOb,KAAKE,OAAO,CAACc,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACE,MAAM,GAAG,aAAa;QAE7F,qFAAqF;QACrF,MAAME,aAAa1B,KAAKE,OAAO,CAACc,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACE,MAAM;QACxD,MAAMG,WAAW3B,KAAKE,OAAO,CAACc,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACL,IAAI;QACpD,MAAMW,iBAAiB5B,KAAKE,OAAO,CAACwB,YAAY1B,KAAK6B,QAAQ,CAACF,UAAUV;QACxE,OAAOW,eAAeE,OAAO,CAACjB,UAAUkB,OAAO,CAACf,IAAIM,IAAI,CAACG,IAAI,EAAE,OAAO,KAAK,CAAC1B,GAAGiC,UAAU,CAACJ,kBAAkBX,OAAOW;IACrH;IAEA,OAAOf;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":["fs","path","isAbsolute","resolve","moduleRegEx","fileURLToPath","getParentPath","context","parentPath","dirname","parentURL","toPath","process","cwd","specifier","startsWith","test","pkg","main","sync","basedir","extensions","packageFilter","json","dir","module","name","modulePath","mainPath","moduleResolved","relative","indexOf","replace","existsSync"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,gBAAgB,cAAc;AACrC,OAAOC,aAAa,UAAU;AAC9B,SAASC,WAAW,QAAQ,iBAAiB;AAC7C,OAAOC,mBAAmB,yBAAyB;AAGnD,SAASC,cAAcC,OAAgB;IACrC,IAAIA,QAAQC,UAAU,EAAE,OAAOP,KAAKQ,OAAO,CAACF,QAAQC,UAAU;IAC9D,OAAOD,QAAQG,SAAS,GAAGT,KAAKQ,OAAO,CAACE,OAAOJ,QAAQG,SAAS,KAAKE,QAAQC,GAAG;AAClF;AAEA,eAAe,SAASF,OAAOG,SAAiB,EAAEP,OAAiB;IACjE,IAAIO,UAAUC,UAAU,CAAC,UAAU,OAAOV,cAAcS;IACxD,IAAIZ,WAAWY,YAAY,OAAOA;IAClC,IAAIA,SAAS,CAAC,EAAE,KAAK,KAAK;QACxB,MAAMN,aAAaD,UAAUD,cAAcC,WAAWK,QAAQC,GAAG;QACjE,OAAOZ,KAAKE,OAAO,CAACK,YAAYM;IAClC;IACA,IAAIV,YAAYY,IAAI,CAACF,YAAY;QAC/B,MAAMN,aAAaD,UAAUD,cAAcC,WAAWK,QAAQC,GAAG;QAEjE,IAAII,MAAM;QACV,MAAMC,OAAOf,QAAQgB,IAAI,CAACL,WAAW;YACnCM,SAASZ;YACTa,YAAY;gBAAC;gBAAO;gBAAS;gBAAS;aAAO;YAC7CC,eAAcC,IAAI,EAAEC,GAAG;gBACrBP,MAAM;oBAAEM;oBAAMC;gBAAI;gBAClB,OAAOD;YACT;QACF;QACA,IAAI,CAACN,OAAO,CAACA,IAAIM,IAAI,CAACE,MAAM,EAAE,OAAOP,MAAM,uBAAuB;QAClE,IAAID,IAAIM,IAAI,CAACG,IAAI,KAAKZ,WAAW,OAAOb,KAAKE,OAAO,CAACc,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACE,MAAM,GAAG,aAAa;QAE7F,qFAAqF;QACrF,MAAME,aAAa1B,KAAKE,OAAO,CAACc,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACE,MAAM;QACxD,MAAMG,WAAW3B,KAAKE,OAAO,CAACc,IAAIO,GAAG,EAAEP,IAAIM,IAAI,CAACL,IAAI;QACpD,MAAMW,iBAAiB5B,KAAKE,OAAO,CAACwB,YAAY1B,KAAK6B,QAAQ,CAACF,UAAUV;QACxE,OAAOW,eAAeE,OAAO,CAACjB,UAAUkB,OAAO,CAACf,IAAIM,IAAI,CAACG,IAAI,EAAE,OAAO,KAAK,CAAC1B,GAAGiC,UAAU,CAACJ,kBAAkBX,OAAOW;IACrH;IAEA,OAAOf;AACT"}
@@ -1 +1 @@
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":["path","url","Promise","wrapWorker","major","process","versions","node","split","version","__dirname","dirname","__filename","fileURLToPath","workerWrapper","resolve","transformDirectory","src","dest","type","options","callback","Error","reject","err","result"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,sEAAsE;AACtE,OAAOC,aAAa,iBAAiB;AACrC,OAAOC,gBAAgB,sBAAsB;AAC7C,MAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,MAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,MAAMM,YAAYV,KAAKW,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaX,IAAIY,aAAa,CAAC,YAAYZ,GAAG;AACjH,MAAMa,gBAAgBX,WAAWH,KAAKe,OAAO,CAACL,WAAW,MAAM,OAAO,WAAW;AAIjF;;;;;;;CAOC,GACD,eAAe,SAASM,mBAAmBC,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,cAAcL,SAASQ,KAAKC,MAAMC,MAAMC,SAASC;IAC5F,OAAO,IAAInB,QAAQ,CAACa,SAASQ;QAC3BT,cAAcL,SAASQ,KAAKC,MAAMC,MAAMC,SAAS,CAACI,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":["path","url","Promise","wrapWorker","major","process","versions","node","split","version","__dirname","dirname","__filename","fileURLToPath","workerWrapper","resolve","transformDirectory","src","dest","type","options","callback","Error","reject","err","result"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,sEAAsE;AACtE,OAAOC,aAAa,iBAAiB;AACrC,OAAOC,gBAAgB,sBAAsB;AAC7C,MAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,MAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,MAAMM,YAAYV,KAAKW,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaX,IAAIY,aAAa,CAAC,YAAYZ,GAAG;AACjH,MAAMa,gBAAgBX,WAAWH,KAAKe,OAAO,CAACL,WAAW,MAAM,OAAO,WAAW;AAIjF;;;;;;;CAOC,GACD,eAAe,SAASM,mBAAmBC,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,cAAcL,SAASQ,KAAKC,MAAMC,MAAMC,SAASC;IAC5F,OAAO,IAAInB,QAAQ,CAACa,SAASQ;QAC3BT,cAAcL,SAASQ,KAAKC,MAAMC,MAAMC,SAAS,CAACI,KAAKC;YACrDD,MAAMD,OAAOC,OAAOT,QAAQU;QAC9B;IACF;AACF"}
@@ -1 +1 @@
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":["path","url","Promise","wrapWorker","major","process","versions","node","split","version","__dirname","dirname","__filename","fileURLToPath","workerWrapper","resolve","transformFile","src","dest","type","options","callback","Error","reject","err","result"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,sEAAsE;AACtE,OAAOC,aAAa,iBAAiB;AACrC,OAAOC,gBAAgB,sBAAsB;AAC7C,MAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,MAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,MAAMM,YAAYV,KAAKW,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaX,IAAIY,aAAa,CAAC,YAAYZ,GAAG;AACjH,MAAMa,gBAAgBX,WAAWH,KAAKe,OAAO,CAACL,WAAW,MAAM,OAAO,WAAW;AAIjF;;;;;;;CAOC,GACD,eAAe,SAASM,cAAcC,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,cAAcL,SAASQ,KAAKC,MAAMC,MAAMC,SAASC;IAC5F,OAAO,IAAInB,QAAQ,CAACa,SAASQ;QAC3BT,cAAcL,SAASQ,KAAKC,MAAMC,MAAMC,SAAS,CAACI,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":["path","url","Promise","wrapWorker","major","process","versions","node","split","version","__dirname","dirname","__filename","fileURLToPath","workerWrapper","resolve","transformFile","src","dest","type","options","callback","Error","reject","err","result"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,sEAAsE;AACtE,OAAOC,aAAa,iBAAiB;AACrC,OAAOC,gBAAgB,sBAAsB;AAC7C,MAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,MAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,MAAMM,YAAYV,KAAKW,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaX,IAAIY,aAAa,CAAC,YAAYZ,GAAG;AACjH,MAAMa,gBAAgBX,WAAWH,KAAKe,OAAO,CAACL,WAAW,MAAM,OAAO,WAAW;AAIjF;;;;;;;CAOC,GACD,eAAe,SAASM,cAAcC,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,cAAcL,SAASQ,KAAKC,MAAMC,MAAMC,SAASC;IAC5F,OAAO,IAAInB,QAAQ,CAACa,SAASQ;QAC3BT,cAAcL,SAASQ,KAAKC,MAAMC,MAAMC,SAAS,CAACI,KAAaC;YAC7DD,MAAMD,OAAOC,OAAOT,QAAQU;QAC9B;IACF;AACF"}
@@ -1 +1 @@
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":["path","url","wrapWorkerSync","__dirname","dirname","__filename","fileURLToPath","workerWrapper","resolve","transformSync","contents","fileName","tsconfig"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,OAAOC,oBAAoB,0BAA0B;AACrD,MAAMC,YAAYH,KAAKI,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaJ,IAAIK,aAAa,CAAC,YAAYL,GAAG;AACjH,MAAMM,gBAAgBL,eAAeF,KAAKQ,OAAO,CAACL,WAAW,MAAM,OAAO,WAAW;AAIrF;;;;;CAKC,GACD,eAAe,SAASM,cAAcC,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":["path","url","wrapWorkerSync","__dirname","dirname","__filename","fileURLToPath","workerWrapper","resolve","transformSync","contents","fileName","tsconfig"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,OAAOC,oBAAoB,0BAA0B;AACrD,MAAMC,YAAYH,KAAKI,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaJ,IAAIK,aAAa,CAAC,YAAYL,GAAG;AACjH,MAAMM,gBAAgBL,eAAeF,KAAKQ,OAAO,CAACL,WAAW,MAAM,OAAO,WAAW;AAIrF;;;;;CAKC,GACD,eAAe,SAASM,cAAcC,QAAgB,EAAEC,QAAgB,EAAEC,QAAwB;IAChG,OAAOL,cAAc,UAAUG,UAAUC,UAAUC;AACrD"}
@@ -1 +1 @@
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":["path","url","Promise","wrapWorker","major","process","versions","node","split","version","__dirname","dirname","__filename","fileURLToPath","workerWrapper","resolve","transformTypes","src","dest","options","callback","Error","reject","err","result"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,sEAAsE;AACtE,OAAOC,aAAa,iBAAiB;AACrC,OAAOC,gBAAgB,sBAAsB;AAC7C,MAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,MAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,MAAMM,YAAYV,KAAKW,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaX,IAAIY,aAAa,CAAC,YAAYZ,GAAG;AACjH,MAAMa,gBAAgBX,WAAWH,KAAKe,OAAO,CAACL,WAAW,MAAM,OAAO,WAAW;AAIjF;;;;;;CAMC,GACD,eAAe,SAASM,eAAeC,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,cAAcL,SAASQ,KAAKC,MAAMC,SAASC;IACtF,OAAO,IAAIlB,QAAQ,CAACa,SAASO;QAC3BR,cAAcL,SAASQ,KAAKC,MAAMC,SAAS,CAACI,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":["path","url","Promise","wrapWorker","major","process","versions","node","split","version","__dirname","dirname","__filename","fileURLToPath","workerWrapper","resolve","transformTypes","src","dest","options","callback","Error","reject","err","result"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,sEAAsE;AACtE,OAAOC,aAAa,iBAAiB;AACrC,OAAOC,gBAAgB,sBAAsB;AAC7C,MAAMC,QAAQ,CAACC,QAAQC,QAAQ,CAACC,IAAI,CAACC,KAAK,CAAC,IAAI,CAAC,EAAE;AAClD,MAAMC,UAAUL,QAAQ,KAAK,WAAW;AACxC,MAAMM,YAAYV,KAAKW,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaX,IAAIY,aAAa,CAAC,YAAYZ,GAAG;AACjH,MAAMa,gBAAgBX,WAAWH,KAAKe,OAAO,CAACL,WAAW,MAAM,OAAO,WAAW;AAIjF;;;;;;CAMC,GACD,eAAe,SAASM,eAAeC,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,cAAcL,SAASQ,KAAKC,MAAMC,SAASC;IACtF,OAAO,IAAIlB,QAAQ,CAACa,SAASO;QAC3BR,cAAcL,SAASQ,KAAKC,MAAMC,SAAS,CAACI,KAAKC;YAC/CD,MAAMD,OAAOC,OAAOR,QAAQS;QAC9B;IACF;AACF"}
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/types.ts"],"sourcesContent":["export interface Context {\n parentURL?: string;\n parentPath?: string;\n}\n\nexport interface TransformResult {\n from: string;\n to: string;\n}\n\nexport interface TransformDirectoryOptions {\n cacheDirectory?: string;\n}\nexport type TransformDirectoryCallback = (err?: Error, filePaths?: TransformResult[]) => void;\n\nexport interface TransformFileOptions {\n cacheDirectory?: string;\n}\nexport type TransformFileCallback = (err?: Error, destFilePath?: string) => void;\n\nexport interface TransformTypesOptions {\n cacheDirectory?: string;\n}\nexport type TransformTypesCallback = (err?: Error, filePaths?: TransformResult[]) => void;\n"],"names":[],"mappings":"AAuBA,WAA0F"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/types.ts"],"sourcesContent":["export interface Context {\n parentURL?: string;\n parentPath?: string;\n}\n\nexport interface TransformResult {\n from: string;\n to: string;\n}\n\nexport interface TransformDirectoryOptions {\n cacheDirectory?: string;\n}\nexport type TransformDirectoryCallback = (err?: Error, filePaths?: TransformResult[]) => void;\n\nexport interface TransformFileOptions {\n cacheDirectory?: string;\n}\nexport type TransformFileCallback = (err?: Error, destFilePath?: string) => void;\n\nexport interface TransformTypesOptions {\n cacheDirectory?: string;\n}\nexport type TransformTypesCallback = (err?: Error, filePaths?: TransformResult[]) => void;\n"],"names":[],"mappings":"AAuBA,WAA0F"}
@@ -1 +1 @@
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":["path","Iterator","getTS","Queue","rimraf2","SKIPS","typeFileRegEx","createMatcher","transformFile","transformDirectoryWorker","src","dest","type","options","callback","tsconfig","getTsconfig","matcher","disableGlob","entries","iterator","forEach","entry","stats","isFile","fullPath","test","basename","indexOf","push","err","results","queue","defer","cb","dirname","join","to","from","relative","sourceMaps","await"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,cAAc,cAAc;AACnC,YAAYC,WAAW,sBAAsB;AAC7C,OAAOC,WAAW,WAAW;AAC7B,OAAOC,aAAa,UAAU;AAE9B,SAASC,KAAK,EAAEC,aAAa,QAAQ,kBAAkB;AACvD,OAAOC,mBAAmB,sBAAsB;AAChD,OAAOC,mBAAmB,qBAAqB;AAE/C,eAAe,SAASC,yBAAyBC,GAAG,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACjF,MAAMC,WAAWF,QAAQE,QAAQ,GAAGF,QAAQE,QAAQ,GAAGb,MAAMc,WAAW,CAACN;IACzE,MAAMO,UAAUV,cAAcQ;IAE9BX,QAAQO,MAAM;QAAEO,aAAa;IAAK,GAAG;QACnC,MAAMC,UAAU,EAAE;QAClB,MAAMC,WAAW,IAAInB,SAASS;QAC9BU,SAASC,OAAO,CACd,CAACC;YACC,IAAI,CAACA,MAAMC,KAAK,CAACC,MAAM,IAAI;YAC3B,IAAI,CAACP,QAAQK,MAAMG,QAAQ,GAAG;YAC9B,IAAInB,cAAcoB,IAAI,CAACJ,MAAMK,QAAQ,GAAG;YACxC,IAAItB,MAAMuB,OAAO,CAACN,MAAMK,QAAQ,KAAK,GAAG;YACxCR,QAAQU,IAAI,CAACP;QACf,GACA,CAACQ;YACC,IAAIA,KAAK,OAAOhB,SAASgB;YACzB,MAAMC,UAAU,EAAE;YAClBlB,UAAU;gBAAE,GAAGA,OAAO;gBAAEE;YAAS;YAEjC,MAAMiB,QAAQ,IAAI7B;YAClBgB,QAAQE,OAAO,CAAC,CAACC,QACfU,MAAMC,KAAK,CAAC,CAACC,KACX1B,cAAcc,MAAMG,QAAQ,EAAEzB,KAAKmC,OAAO,CAACnC,KAAKoC,IAAI,CAACzB,MAAMW,MAAMtB,IAAI,IAAIY,MAAMC,SAAS,CAACiB,KAAKO;wBAC5F,IAAIP,KAAK,OAAOI,GAAGJ;wBACnBC,QAAQF,IAAI,CAAC;4BAAES,MAAMhB;4BAAOe,IAAIrC,KAAKoC,IAAI,CAACpC,KAAKuC,QAAQ,CAAC7B,KAAKV,KAAKmC,OAAO,CAACb,MAAMG,QAAQ,IAAIY;wBAAI;wBAChG,IAAIxB,QAAQ2B,UAAU,EAAET,QAAQF,IAAI,CAAC;4BAAES,MAAMhB;4BAAOe,IAAI,GAAGrC,KAAKoC,IAAI,CAACpC,KAAKuC,QAAQ,CAAC7B,KAAKV,KAAKmC,OAAO,CAACb,MAAMG,QAAQ,IAAIY,IAAI,IAAI,CAAC;wBAAC;wBACjIH;oBACF;YAGJF,MAAMS,KAAK,CAAC,CAACX,MAASA,MAAMhB,SAASgB,OAAOhB,SAAS,MAAMiB;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":["path","Iterator","getTS","Queue","rimraf2","SKIPS","typeFileRegEx","createMatcher","transformFile","transformDirectoryWorker","src","dest","type","options","callback","tsconfig","getTsconfig","matcher","disableGlob","entries","iterator","forEach","entry","stats","isFile","fullPath","test","basename","indexOf","push","err","results","queue","defer","cb","dirname","join","to","from","relative","sourceMaps","await"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,cAAc,cAAc;AACnC,YAAYC,WAAW,sBAAsB;AAC7C,OAAOC,WAAW,WAAW;AAC7B,OAAOC,aAAa,UAAU;AAE9B,SAASC,KAAK,EAAEC,aAAa,QAAQ,kBAAkB;AACvD,OAAOC,mBAAmB,sBAAsB;AAChD,OAAOC,mBAAmB,qBAAqB;AAE/C,eAAe,SAASC,yBAAyBC,GAAG,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACjF,MAAMC,WAAWF,QAAQE,QAAQ,GAAGF,QAAQE,QAAQ,GAAGb,MAAMc,WAAW,CAACN;IACzE,MAAMO,UAAUV,cAAcQ;IAE9BX,QAAQO,MAAM;QAAEO,aAAa;IAAK,GAAG;QACnC,MAAMC,UAAU,EAAE;QAClB,MAAMC,WAAW,IAAInB,SAASS;QAC9BU,SAASC,OAAO,CACd,CAACC;YACC,IAAI,CAACA,MAAMC,KAAK,CAACC,MAAM,IAAI;YAC3B,IAAI,CAACP,QAAQK,MAAMG,QAAQ,GAAG;YAC9B,IAAInB,cAAcoB,IAAI,CAACJ,MAAMK,QAAQ,GAAG;YACxC,IAAItB,MAAMuB,OAAO,CAACN,MAAMK,QAAQ,KAAK,GAAG;YACxCR,QAAQU,IAAI,CAACP;QACf,GACA,CAACQ;YACC,IAAIA,KAAK,OAAOhB,SAASgB;YACzB,MAAMC,UAAU,EAAE;YAClBlB,UAAU;gBAAE,GAAGA,OAAO;gBAAEE;YAAS;YAEjC,MAAMiB,QAAQ,IAAI7B;YAClBgB,QAAQE,OAAO,CAAC,CAACC,QACfU,MAAMC,KAAK,CAAC,CAACC,KACX1B,cAAcc,MAAMG,QAAQ,EAAEzB,KAAKmC,OAAO,CAACnC,KAAKoC,IAAI,CAACzB,MAAMW,MAAMtB,IAAI,IAAIY,MAAMC,SAAS,CAACiB,KAAKO;wBAC5F,IAAIP,KAAK,OAAOI,GAAGJ;wBACnBC,QAAQF,IAAI,CAAC;4BAAES,MAAMhB;4BAAOe,IAAIrC,KAAKoC,IAAI,CAACpC,KAAKuC,QAAQ,CAAC7B,KAAKV,KAAKmC,OAAO,CAACb,MAAMG,QAAQ,IAAIY;wBAAI;wBAChG,IAAIxB,QAAQ2B,UAAU,EAAET,QAAQF,IAAI,CAAC;4BAAES,MAAMhB;4BAAOe,IAAI,GAAGrC,KAAKoC,IAAI,CAACpC,KAAKuC,QAAQ,CAAC7B,KAAKV,KAAKmC,OAAO,CAACb,MAAMG,QAAQ,IAAIY,IAAI,IAAI,CAAC;wBAAC;wBACjIH;oBACF;YAGJF,MAAMS,KAAK,CAAC,CAACX,MAASA,MAAMhB,SAASgB,OAAOhB,SAAS,MAAMiB;QAC7D;IAEJ;AACF"}
@@ -1 +1 @@
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":["fs","path","getTS","mkdirp","Queue","swcPrepareOptions","lazy","lazySWC","matchingDeps","matchingName","regexCJS","RegExp","regexESM","importReplaceMJS","importReplaceCJS","requireReplaceJS","makeReplacements","code","regex","extensions","extension","matches","match","exec","dependency","ext","find","x","slice","length","push","reverse","index","start","indexOf","substring","interopClientDefaultExport","transformFileWorker","src","dest","type","options","callback","tsconfig","getTsconfig","config","compilerOptions","module","target","err","swcOptions","swc","basename","transformFile","endsWith","tsxOptions","nonTsxOptions","filename","then","output","extname","destFilePath","join","replace","dirname","queue","defer","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":["fs","path","getTS","mkdirp","Queue","swcPrepareOptions","lazy","lazySWC","matchingDeps","matchingName","regexCJS","RegExp","regexESM","importReplaceMJS","importReplaceCJS","requireReplaceJS","makeReplacements","code","regex","extensions","extension","matches","match","exec","dependency","ext","find","x","slice","length","push","reverse","index","start","indexOf","substring","interopClientDefaultExport","transformFileWorker","src","dest","type","options","callback","tsconfig","getTsconfig","config","compilerOptions","module","target","err","swcOptions","swc","basename","transformFile","endsWith","tsxOptions","nonTsxOptions","filename","then","output","extname","destFilePath","join","replace","dirname","queue","defer","writeFile","bind","sourceMaps","map","await","relative","catch"],"mappings":"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"}
@@ -1 +1 @@
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":["swcPrepareOptions","lazy","lazySWC","transformSyncWorker","contents","fileName","tsconfig","callback","err","swcOptions","swc","transform","endsWith","tsxOptions","nonTsxOptions","filename","then","output","catch"],"mappings":"AAAA,OAAOA,uBAAuB,8BAA8B;AAE5D,aAAa;AACb,OAAOC,UAAU,kBAAkB;AACnC,MAAMC,UAAUD,KAAK;AAGrB,eAAe,SAASE,oBAAoBC,QAAgB,EAAEC,QAAgB,EAAEC,QAAwB,EAAEC,QAAQ;IAChHP,kBAAkBM,UAAU,CAACE,KAAKC;QAChC,IAAID,KAAK,OAAOD,SAASC;QACzB,MAAME,MAAMR;QACZQ,IACGC,SAAS,CAACP,UAAU;YACnB,GAAIC,SAASO,QAAQ,CAAC,WAAWP,SAASO,QAAQ,CAAC,UAAUH,WAAWI,UAAU,GAAGJ,WAAWK,aAAa;YAC7GC,UAAUV;QACZ,GACCW,IAAI,CAAC,CAACC,SAAWV,SAAS,MAAMU,SAChCC,KAAK,CAACX;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":["swcPrepareOptions","lazy","lazySWC","transformSyncWorker","contents","fileName","tsconfig","callback","err","swcOptions","swc","transform","endsWith","tsxOptions","nonTsxOptions","filename","then","output","catch"],"mappings":"AAAA,OAAOA,uBAAuB,8BAA8B;AAE5D,aAAa;AACb,OAAOC,UAAU,kBAAkB;AACnC,MAAMC,UAAUD,KAAK;AAGrB,eAAe,SAASE,oBAAoBC,QAAgB,EAAEC,QAAgB,EAAEC,QAAwB,EAAEC,QAAQ;IAChHP,kBAAkBM,UAAU,CAACE,KAAKC;QAChC,IAAID,KAAK,OAAOD,SAASC;QACzB,MAAME,MAAMR;QACZQ,IACGC,SAAS,CAACP,UAAU;YACnB,GAAIC,SAASO,QAAQ,CAAC,WAAWP,SAASO,QAAQ,CAAC,UAAUH,WAAWI,UAAU,GAAGJ,WAAWK,aAAa;YAC7GC,UAAUV;QACZ,GACCW,IAAI,CAAC,CAACC,SAAWV,SAAS,MAAMU,SAChCC,KAAK,CAACX;IACX;AACF"}
@@ -2,8 +2,8 @@ import path from 'path';
2
2
  import spawn from 'cross-spawn-cb';
3
3
  import Iterator from 'fs-iterator';
4
4
  import * as getTS from 'get-tsconfig-compat';
5
+ import which from 'module-which';
5
6
  import rimraf2 from 'rimraf2';
6
- import which from '../lib/which.mjs';
7
7
  import { SKIPS, typeFileRegEx } from '../constants.mjs';
8
8
  import createMatcher from '../createMatcher.mjs';
9
9
  export default function transformTypesWorker(src, dest, options, callback) {
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/@typescript/ts-swc-transform/src/workers/transformTypes.ts"],"sourcesContent":["import path from 'path';\nimport spawn from 'cross-spawn-cb';\nimport Iterator from 'fs-iterator';\nimport * as getTS from 'get-tsconfig-compat';\nimport rimraf2 from 'rimraf2';\nimport which from '../lib/which.js';\n\nimport { SKIPS, typeFileRegEx } from '../constants.js';\nimport createMatcher from '../createMatcher.js';\n\nexport default function transformTypesWorker(src, dest, options, callback) {\n which('tsc', options, (_err, tsc) => {\n const tsconfig = options.tsconfig ? options.tsconfig : getTS.getTsconfig(src);\n const matcher = createMatcher(tsconfig);\n\n const tsArgs = [];\n for (const key in tsconfig.config.compilerOptions) {\n const value = tsconfig.config.compilerOptions[key];\n tsArgs.push(`--${key}`);\n tsArgs.push(Array.isArray(value) ? value.join(',') : value);\n }\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 if (entries.length === 0) return callback();\n const results = entries.map((entry) => {\n const result = { from: path.relative(src, entry.fullPath), to: '' };\n const dirname = path.dirname(result.from);\n const basename = path.basename(result.from);\n let ext = path.extname(basename);\n ext = ext.replace('sx', 's');\n ext = ext.replace('js', 'ts');\n result.to = path.join(dirname === '.' ? '' : dirname, `${basename.replace(/\\.[^/.]+$/, '')}.d${ext}`);\n return result;\n });\n const args = [tsc, ...results.map((x) => path.resolve(src, x.from)), '--declaration', '--emitDeclarationOnly', '--outDir', dest, ...tsArgs];\n spawn(args[0], args.slice(1), { stdio: 'inherit' }, (err) => (err ? callback(err) : callback(null, results)));\n }\n );\n });\n });\n}\n\n// import fs from 'fs';\n// import path from 'path';\n// import Iterator from 'fs-iterator';\n// import * as getTS from 'get-tsconfig-compat';\n// import mkdirp from 'mkdirp-classic';\n// import Queue from 'queue-cb';\n// import rimraf2 from 'rimraf2';\n// import { type SourceFile, WriteFileCallbackData } from 'typescript';\n\n// // @ts-ignore\n// import lazy from '../lib/lazy.cjs';\n// const lazyTS = lazy('typescript');\n\n// import { SKIPS, typeFileRegEx } from '../constants.js';\n// import createMatcher from '../createMatcher.js';\n\n// export default function transformTypesWorker(src, dest, 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 copies = [];\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 copies.push(entry);\n// if (SKIPS.indexOf(entry.basename) >= 0) return;\n// entries.push(entry);\n// },\n// (err) => {\n// if (err) return callback(err);\n// if (entries.length === 0) return callback();\n\n// const ts = lazyTS();\n// const options = {\n// ...(tsconfig.compilerOptions || {}),\n// allowJs: true,\n// declaration: true,\n// emitDeclarationOnly: true,\n// };\n// const generated = {};\n// const host = ts.createCompilerHost(options);\n// host.writeFile = (filePath: string, contents: string, writeByteOrderMark: boolean, onError?: (message: string) => void, sourceFiles?: readonly SourceFile[], data?: WriteFileCallbackData) => {\n// // const destPath = path.resolve(dest, path.relative(src, filePath));\n// // mkdirp.sync(path.dirname(destPath))\n// // fs.writeFileSync(destPath, contents, 'utf8');\n// generated[sourceFiles[0].fileName] = { filePath, contents };\n// };\n\n// // Prepare and emit the d.ts files\n// const program = ts.createProgram(\n// entries.map((entry) => entry.fullPath),\n// options,\n// host\n// );\n// program.emit();\n\n// const results = entries\n// .filter((entry) => generated[entry.fullPath] !== undefined)\n// .map((entry) => {\n// return { from: entry.path, to: path.relative(src, generated[entry.fullPath].filePath) };\n// });\n// copies.forEach((entry) => results.push({ from: entry.path, to: entry.path }));\n\n// callback(null, results)\n\n// // function createFolders(cb) {\n// // // return cb();\n// // const queue = new Queue();\n// // entries.concat(copies)\n// // .map((x) => path.resolve(dest, path.dirname(x.path)))\n// // .sort((a, b) => b.localeCompare(a))\n// // .reduce((m, x) => (m.some((y) => y.startsWith(x)) ? m : m.concat(x)), [])\n// // .forEach((x) => {\n// // queue.defer(mkdirp.bind(null, x));\n// // });\n// // queue.await(cb);\n// // }\n// // function writeGenerated(cb) {\n// // const queue = new Queue();\n// // entries\n// // .filter((entry) => generated[entry.fullPath] !== undefined)\n// // .forEach((entry) => {\n// // const record = generated[entry.fullPath];\n// // const destPath = path.resolve(dest, path.relative(src, record.filePath));\n// // queue.defer(fs.writeFile.bind(null, destPath, record.contents, 'utf8'));\n// // });\n// // queue.await(cb);\n// // }\n\n// // function copyTypes(cb) {\n// // const queue = new Queue();\n// // copies.forEach((entry) => {\n// // const destPath = path.resolve(dest, entry.path);\n// // queue.defer((cb) => {\n// // fs.readFile(entry.fullPath, (err, contents) => {\n// // err ? callback(err) : fs.writeFile(destPath, contents, cb);\n// // });\n// // });\n// // });\n// // queue.await(cb);\n// // }\n\n// // createFolders((err) => {\n// // if (err) return callback(err);\n// // const queue = new Queue();\n// // queue.defer(writeGenerated.bind(null));\n// // queue.defer(copyTypes.bind(null));\n// // queue.await((err) => {\n// // err ? callback(err) : callback(null, results);\n// // });\n// // });\n// }\n// );\n// });\n// }\n"],"names":["path","spawn","Iterator","getTS","rimraf2","which","SKIPS","typeFileRegEx","createMatcher","transformTypesWorker","src","dest","options","callback","_err","tsc","tsconfig","getTsconfig","matcher","tsArgs","key","config","compilerOptions","value","push","Array","isArray","join","disableGlob","entries","iterator","forEach","entry","stats","isFile","fullPath","test","basename","indexOf","err","length","results","map","result","from","relative","to","dirname","ext","extname","replace","args","x","resolve","slice","stdio"],"mappings":"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"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/workers/transformTypes.ts"],"sourcesContent":["import path from 'path';\nimport spawn from 'cross-spawn-cb';\nimport Iterator from 'fs-iterator';\nimport * as getTS from 'get-tsconfig-compat';\nimport which from 'module-which';\nimport rimraf2 from 'rimraf2';\n\nimport { SKIPS, typeFileRegEx } from '../constants.js';\nimport createMatcher from '../createMatcher.js';\n\nexport default function transformTypesWorker(src, dest, options, callback) {\n which('tsc', options, (_err, tsc) => {\n const tsconfig = options.tsconfig ? options.tsconfig : getTS.getTsconfig(src);\n const matcher = createMatcher(tsconfig);\n\n const tsArgs = [];\n for (const key in tsconfig.config.compilerOptions) {\n const value = tsconfig.config.compilerOptions[key];\n tsArgs.push(`--${key}`);\n tsArgs.push(Array.isArray(value) ? value.join(',') : value);\n }\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 if (entries.length === 0) return callback();\n const results = entries.map((entry) => {\n const result = { from: path.relative(src, entry.fullPath), to: '' };\n const dirname = path.dirname(result.from);\n const basename = path.basename(result.from);\n let ext = path.extname(basename);\n ext = ext.replace('sx', 's');\n ext = ext.replace('js', 'ts');\n result.to = path.join(dirname === '.' ? '' : dirname, `${basename.replace(/\\.[^/.]+$/, '')}.d${ext}`);\n return result;\n });\n const args = [tsc, ...results.map((x) => path.resolve(src, x.from)), '--declaration', '--emitDeclarationOnly', '--outDir', dest, ...tsArgs];\n spawn(args[0], args.slice(1), { stdio: 'inherit' }, (err) => (err ? callback(err) : callback(null, results)));\n }\n );\n });\n });\n}\n\n// import fs from 'fs';\n// import path from 'path';\n// import Iterator from 'fs-iterator';\n// import * as getTS from 'get-tsconfig-compat';\n// import mkdirp from 'mkdirp-classic';\n// import Queue from 'queue-cb';\n// import rimraf2 from 'rimraf2';\n// import { type SourceFile, WriteFileCallbackData } from 'typescript';\n\n// // @ts-ignore\n// import lazy from '../lib/lazy.cjs';\n// const lazyTS = lazy('typescript');\n\n// import { SKIPS, typeFileRegEx } from '../constants.js';\n// import createMatcher from '../createMatcher.js';\n\n// export default function transformTypesWorker(src, dest, 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 copies = [];\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 copies.push(entry);\n// if (SKIPS.indexOf(entry.basename) >= 0) return;\n// entries.push(entry);\n// },\n// (err) => {\n// if (err) return callback(err);\n// if (entries.length === 0) return callback();\n\n// const ts = lazyTS();\n// const options = {\n// ...(tsconfig.compilerOptions || {}),\n// allowJs: true,\n// declaration: true,\n// emitDeclarationOnly: true,\n// };\n// const generated = {};\n// const host = ts.createCompilerHost(options);\n// host.writeFile = (filePath: string, contents: string, writeByteOrderMark: boolean, onError?: (message: string) => void, sourceFiles?: readonly SourceFile[], data?: WriteFileCallbackData) => {\n// // const destPath = path.resolve(dest, path.relative(src, filePath));\n// // mkdirp.sync(path.dirname(destPath))\n// // fs.writeFileSync(destPath, contents, 'utf8');\n// generated[sourceFiles[0].fileName] = { filePath, contents };\n// };\n\n// // Prepare and emit the d.ts files\n// const program = ts.createProgram(\n// entries.map((entry) => entry.fullPath),\n// options,\n// host\n// );\n// program.emit();\n\n// const results = entries\n// .filter((entry) => generated[entry.fullPath] !== undefined)\n// .map((entry) => {\n// return { from: entry.path, to: path.relative(src, generated[entry.fullPath].filePath) };\n// });\n// copies.forEach((entry) => results.push({ from: entry.path, to: entry.path }));\n\n// callback(null, results)\n\n// // function createFolders(cb) {\n// // // return cb();\n// // const queue = new Queue();\n// // entries.concat(copies)\n// // .map((x) => path.resolve(dest, path.dirname(x.path)))\n// // .sort((a, b) => b.localeCompare(a))\n// // .reduce((m, x) => (m.some((y) => y.startsWith(x)) ? m : m.concat(x)), [])\n// // .forEach((x) => {\n// // queue.defer(mkdirp.bind(null, x));\n// // });\n// // queue.await(cb);\n// // }\n// // function writeGenerated(cb) {\n// // const queue = new Queue();\n// // entries\n// // .filter((entry) => generated[entry.fullPath] !== undefined)\n// // .forEach((entry) => {\n// // const record = generated[entry.fullPath];\n// // const destPath = path.resolve(dest, path.relative(src, record.filePath));\n// // queue.defer(fs.writeFile.bind(null, destPath, record.contents, 'utf8'));\n// // });\n// // queue.await(cb);\n// // }\n\n// // function copyTypes(cb) {\n// // const queue = new Queue();\n// // copies.forEach((entry) => {\n// // const destPath = path.resolve(dest, entry.path);\n// // queue.defer((cb) => {\n// // fs.readFile(entry.fullPath, (err, contents) => {\n// // err ? callback(err) : fs.writeFile(destPath, contents, cb);\n// // });\n// // });\n// // });\n// // queue.await(cb);\n// // }\n\n// // createFolders((err) => {\n// // if (err) return callback(err);\n// // const queue = new Queue();\n// // queue.defer(writeGenerated.bind(null));\n// // queue.defer(copyTypes.bind(null));\n// // queue.await((err) => {\n// // err ? callback(err) : callback(null, results);\n// // });\n// // });\n// }\n// );\n// });\n// }\n"],"names":["path","spawn","Iterator","getTS","which","rimraf2","SKIPS","typeFileRegEx","createMatcher","transformTypesWorker","src","dest","options","callback","_err","tsc","tsconfig","getTsconfig","matcher","tsArgs","key","config","compilerOptions","value","push","Array","isArray","join","disableGlob","entries","iterator","forEach","entry","stats","isFile","fullPath","test","basename","indexOf","err","length","results","map","result","from","relative","to","dirname","ext","extname","replace","args","x","resolve","slice","stdio"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ts-swc-transform",
3
- "version": "1.8.9",
3
+ "version": "1.9.0",
4
4
  "description": "Typescript transformers for swc. Supports Node >= 0.8",
5
5
  "keywords": [
6
6
  "matcher",
@@ -52,9 +52,7 @@
52
52
  "@swc/core": "*",
53
53
  "call-once-fn": "^1.0.1",
54
54
  "cross-spawn-cb": "^1.5.7",
55
- "env-path-key": "^1.0.0",
56
55
  "exit": "^0.1.2",
57
- "fs-exists-sync": "^0.1.0",
58
56
  "fs-iterator": "^5.2.0",
59
57
  "get-tsconfig-compat": "^2.0.2",
60
58
  "install-module-linked": "^0.2.0",
@@ -62,9 +60,9 @@
62
60
  "lazy-cache": "^2.0.2",
63
61
  "minimatch": "^3.1.2",
64
62
  "mkdirp-classic": "^0.5.3",
65
- "node-version-call": "^1.3.3",
63
+ "module-which": "^0.1.0",
64
+ "node-version-call": "^1.3.5",
66
65
  "path-posix": "^1.0.0",
67
- "path-string-prepend": "^1.0.0",
68
66
  "pinkie-promise": "^2.0.1",
69
67
  "queue-cb": "^1.4.4",
70
68
  "resolve": "^1.22.10",
@@ -72,8 +70,7 @@
72
70
  "rimraf2": "^2.8.2",
73
71
  "ts-node": "*",
74
72
  "typescript": "*",
75
- "unixify": "^1.0.0",
76
- "which": "^1.3.1"
73
+ "unixify": "^1.0.0"
77
74
  },
78
75
  "devDependencies": {
79
76
  "@biomejs/biome": "^1.9.4",
@@ -1,26 +0,0 @@
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 packageRoot;
9
- }
10
- });
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"));
14
- function _interop_require_default(obj) {
15
- return obj && obj.__esModule ? obj : {
16
- default: obj
17
- };
18
- }
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);
25
- }
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; }
@@ -1 +0,0 @@
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,46 +0,0 @@
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 NODES = [
25
- 'node',
26
- 'node.exe',
27
- 'node.cmd'
28
- ];
29
- function whichCompat(command, options, callback) {
30
- var cwd = options.cwd || process.cwd();
31
- var env = options.env || process.env;
32
- var pathKey = (0, _envpathkey.default)(env) || '';
33
- var envPath = env[pathKey] || '';
34
- envPath = (0, _pathstringprepend.default)(envPath, _path.default.resolve(cwd, 'node_modules', '.bin'));
35
- envPath = (0, _pathstringprepend.default)(envPath, _path.default.resolve(root, '..', '.bin'));
36
- if (NODES.indexOf(_path.default.basename(command).toLowerCase()) >= 0) {
37
- if (env.NODE || env.npm_node_execpath) return callback(null, env.NODE || env.npm_node_execpath);
38
- }
39
- // look up the full path
40
- (0, _which.default)(command, {
41
- path: envPath
42
- }, function(err, found) {
43
- err ? callback(err) : callback(null, found);
44
- });
45
- }
46
- /* 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; }
@@ -1 +0,0 @@
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 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 err ? callback(err) : callback(null, found);\n });\n}\n"],"names":["whichCompat","__dirname","path","dirname","__filename","url","fileURLToPath","root","packageRoot","NODES","command","options","callback","cwd","process","env","pathKey","envPathKey","envPath","prepend","resolve","indexOf","basename","toLowerCase","NODE","npm_node_execpath","which","err","found"],"mappings":";;;;+BAYA;;;eAAwBA;;;2DAZP;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,QAAQ;IAAC;IAAQ;IAAY;CAAW;AAE/B,SAAST,YAAYU,OAAO,EAAEC,OAAO,EAAEC,QAAQ;IAC5D,IAAMC,MAAMF,QAAQE,GAAG,IAAIC,QAAQD,GAAG;IACtC,IAAME,MAAMJ,QAAQI,GAAG,IAAID,QAAQC,GAAG;IACtC,IAAMC,UAAUC,IAAAA,mBAAU,EAACF,QAAQ;IACnC,IAAIG,UAAUH,GAAG,CAACC,QAAQ,IAAI;IAC9BE,UAAUC,IAAAA,0BAAO,EAACD,SAAShB,aAAI,CAACkB,OAAO,CAACP,KAAK,gBAAgB;IAC7DK,UAAUC,IAAAA,0BAAO,EAACD,SAAShB,aAAI,CAACkB,OAAO,CAACb,MAAM,MAAM;IAEpD,IAAIE,MAAMY,OAAO,CAACnB,aAAI,CAACoB,QAAQ,CAACZ,SAASa,WAAW,OAAO,GAAG;QAC5D,IAAIR,IAAIS,IAAI,IAAIT,IAAIU,iBAAiB,EAAE,OAAOb,SAAS,MAAMG,IAAIS,IAAI,IAAIT,IAAIU,iBAAiB;IAChG;IAEA,wBAAwB;IACxBC,IAAAA,cAAK,EAAChB,SAAS;QAAER,MAAMgB;IAAQ,GAAG,SAACS,KAAKC;QACtCD,MAAMf,SAASe,OAAOf,SAAS,MAAMgB;IACvC;AACF"}
@@ -1,10 +0,0 @@
1
- import fs from 'fs';
2
- import path from 'path';
3
- import existsSync from 'fs-exists-sync';
4
- export default function packageRoot(dir) {
5
- const packagePath = path.join(dir, 'package.json');
6
- if (existsSync(packagePath) && JSON.parse(fs.readFileSync(packagePath, 'utf8')).name) return dir;
7
- const nextDir = path.dirname(dir);
8
- if (nextDir === dir) throw new Error('Package root not found');
9
- return packageRoot(nextDir);
10
- }
@@ -1 +0,0 @@
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":["fs","path","existsSync","packageRoot","dir","packagePath","join","JSON","parse","readFileSync","name","nextDir","dirname","Error"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,gBAAgB,iBAAiB;AAExC,eAAe,SAASC,YAAYC,GAAG;IACrC,MAAMC,cAAcJ,KAAKK,IAAI,CAACF,KAAK;IACnC,IAAIF,WAAWG,gBAAgBE,KAAKC,KAAK,CAACR,GAAGS,YAAY,CAACJ,aAAa,SAASK,IAAI,EAAE,OAAON;IAC7F,MAAMO,UAAUV,KAAKW,OAAO,CAACR;IAC7B,IAAIO,YAAYP,KAAK,MAAM,IAAIS,MAAM;IACrC,OAAOV,YAAYQ;AACrB"}
@@ -1,30 +0,0 @@
1
- import path from 'path';
2
- import url from 'url';
3
- import envPathKey from 'env-path-key';
4
- import prepend from 'path-string-prepend';
5
- import which from 'which';
6
- import packageRoot from './packageRoot.mjs';
7
- const __dirname = path.dirname(typeof __filename !== 'undefined' ? __filename : url.fileURLToPath(import.meta.url));
8
- const root = packageRoot(__dirname);
9
- const NODES = [
10
- 'node',
11
- 'node.exe',
12
- 'node.cmd'
13
- ];
14
- export default function whichCompat(command, options, callback) {
15
- const cwd = options.cwd || process.cwd();
16
- const env = options.env || process.env;
17
- const pathKey = envPathKey(env) || '';
18
- let envPath = env[pathKey] || '';
19
- envPath = prepend(envPath, path.resolve(cwd, 'node_modules', '.bin'));
20
- envPath = prepend(envPath, path.resolve(root, '..', '.bin'));
21
- if (NODES.indexOf(path.basename(command).toLowerCase()) >= 0) {
22
- if (env.NODE || env.npm_node_execpath) return callback(null, env.NODE || env.npm_node_execpath);
23
- }
24
- // look up the full path
25
- which(command, {
26
- path: envPath
27
- }, (err, found)=>{
28
- err ? callback(err) : callback(null, found);
29
- });
30
- }
@@ -1 +0,0 @@
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 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 err ? callback(err) : callback(null, found);\n });\n}\n"],"names":["path","url","envPathKey","prepend","which","packageRoot","__dirname","dirname","__filename","fileURLToPath","root","NODES","whichCompat","command","options","callback","cwd","process","env","pathKey","envPath","resolve","indexOf","basename","toLowerCase","NODE","npm_node_execpath","err","found"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,OAAOC,SAAS,MAAM;AACtB,OAAOC,gBAAgB,eAAe;AACtC,OAAOC,aAAa,sBAAsB;AAC1C,OAAOC,WAAW,QAAQ;AAC1B,OAAOC,iBAAiB,mBAAmB;AAE3C,MAAMC,YAAYN,KAAKO,OAAO,CAAC,OAAOC,eAAe,cAAcA,aAAaP,IAAIQ,aAAa,CAAC,YAAYR,GAAG;AACjH,MAAMS,OAAOL,YAAYC;AAEzB,MAAMK,QAAQ;IAAC;IAAQ;IAAY;CAAW;AAE9C,eAAe,SAASC,YAAYC,OAAO,EAAEC,OAAO,EAAEC,QAAQ;IAC5D,MAAMC,MAAMF,QAAQE,GAAG,IAAIC,QAAQD,GAAG;IACtC,MAAME,MAAMJ,QAAQI,GAAG,IAAID,QAAQC,GAAG;IACtC,MAAMC,UAAUjB,WAAWgB,QAAQ;IACnC,IAAIE,UAAUF,GAAG,CAACC,QAAQ,IAAI;IAC9BC,UAAUjB,QAAQiB,SAASpB,KAAKqB,OAAO,CAACL,KAAK,gBAAgB;IAC7DI,UAAUjB,QAAQiB,SAASpB,KAAKqB,OAAO,CAACX,MAAM,MAAM;IAEpD,IAAIC,MAAMW,OAAO,CAACtB,KAAKuB,QAAQ,CAACV,SAASW,WAAW,OAAO,GAAG;QAC5D,IAAIN,IAAIO,IAAI,IAAIP,IAAIQ,iBAAiB,EAAE,OAAOX,SAAS,MAAMG,IAAIO,IAAI,IAAIP,IAAIQ,iBAAiB;IAChG;IAEA,wBAAwB;IACxBtB,MAAMS,SAAS;QAAEb,MAAMoB;IAAQ,GAAG,CAACO,KAAKC;QACtCD,MAAMZ,SAASY,OAAOZ,SAAS,MAAMa;IACvC;AACF"}
@@ -1 +0,0 @@
1
- export default function packageRoot(dir: any): any;
@@ -1 +0,0 @@
1
- export default function whichCompat(command: any, options: any, callback: any): any;