ts-swc-transform 1.13.11 → 1.13.12

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.
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ default: function() {
13
+ return ensureBindings;
14
+ },
15
+ sync: function() {
16
+ return sync;
17
+ }
18
+ });
19
+ var _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
20
+ var _path = /*#__PURE__*/ _interop_require_default(require("path"));
21
+ var _installmodulelinked = /*#__PURE__*/ _interop_require_wildcard(require("install-module-linked"));
22
+ var _resolve = /*#__PURE__*/ _interop_require_default(require("resolve"));
23
+ var _resolveoncecb = /*#__PURE__*/ _interop_require_default(require("resolve-once-cb"));
24
+ function _interop_require_default(obj) {
25
+ return obj && obj.__esModule ? obj : {
26
+ default: obj
27
+ };
28
+ }
29
+ function _getRequireWildcardCache(nodeInterop) {
30
+ if (typeof WeakMap !== "function") return null;
31
+ var cacheBabelInterop = new WeakMap();
32
+ var cacheNodeInterop = new WeakMap();
33
+ return (_getRequireWildcardCache = function(nodeInterop) {
34
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
35
+ })(nodeInterop);
36
+ }
37
+ function _interop_require_wildcard(obj, nodeInterop) {
38
+ if (!nodeInterop && obj && obj.__esModule) {
39
+ return obj;
40
+ }
41
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
42
+ return {
43
+ default: obj
44
+ };
45
+ }
46
+ var cache = _getRequireWildcardCache(nodeInterop);
47
+ if (cache && cache.has(obj)) {
48
+ return cache.get(obj);
49
+ }
50
+ var newObj = {
51
+ __proto__: null
52
+ };
53
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
54
+ for(var key in obj){
55
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
56
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
57
+ if (desc && (desc.get || desc.set)) {
58
+ Object.defineProperty(newObj, key, desc);
59
+ } else {
60
+ newObj[key] = obj[key];
61
+ }
62
+ }
63
+ }
64
+ newObj.default = obj;
65
+ if (cache) {
66
+ cache.set(obj, newObj);
67
+ }
68
+ return newObj;
69
+ }
70
+ var existsSync = function(test) {
71
+ try {
72
+ (_fs.default.accessSync || _fs.default.statSync)(test);
73
+ return true;
74
+ } catch (_) {
75
+ return false;
76
+ }
77
+ };
78
+ function findDependency(identifier, target) {
79
+ var packagePath = _resolve.default.sync("".concat(identifier, "/package.json"));
80
+ var nodeModules = identifier[0] === '@' ? _path.default.join(packagePath, '..', '..', '..') : _path.default.join(packagePath, '..', '..');
81
+ var optionalDependencies = JSON.parse(_fs.default.readFileSync(packagePath, 'utf8')).optionalDependencies;
82
+ var name = Object.keys(optionalDependencies).find(function(name) {
83
+ return name.indexOf(target) >= 0;
84
+ });
85
+ return name ? {
86
+ name: name,
87
+ version: optionalDependencies[name],
88
+ nodeModules: nodeModules
89
+ } : null;
90
+ }
91
+ var bindings = {};
92
+ function ensureBindings(identifier, target, callback) {
93
+ if (bindings[identifier] === undefined) bindings[identifier] = {};
94
+ if (bindings[identifier][target] === undefined) {
95
+ bindings[identifier][target] = (0, _resolveoncecb.default)(function(cb) {
96
+ var _findDependency = findDependency(identifier, target), name = _findDependency.name, version = _findDependency.version, nodeModules = _findDependency.nodeModules;
97
+ var installString = version ? "".concat(name, "@").concat(version) : name;
98
+ return existsSync(_path.default.join(nodeModules, name)) ? cb() : (0, _installmodulelinked.default)(installString, nodeModules, cb);
99
+ });
100
+ }
101
+ bindings[identifier][target](callback);
102
+ }
103
+ var bindingsSync = {};
104
+ function sync(identifier, target) {
105
+ if (bindingsSync[identifier] === undefined) bindingsSync[identifier] = {};
106
+ if (bindingsSync[identifier][target] === undefined) {
107
+ bindingsSync[identifier][target] = function() {
108
+ var _findDependency = findDependency(identifier, target), name = _findDependency.name, version = _findDependency.version, nodeModules = _findDependency.nodeModules;
109
+ var installString = version ? "".concat(name, "@").concat(version) : name;
110
+ return existsSync(_path.default.join(nodeModules, name)) ? target : (0, _installmodulelinked.sync)(installString, nodeModules);
111
+ }();
112
+ }
113
+ }
114
+ /* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/ensureBindings.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport installModule, { sync as installModuleSync } from 'install-module-linked';\nimport resolve from 'resolve';\nimport resolveOnce from 'resolve-once-cb';\n\nconst existsSync = (test) => {\n try {\n (fs.accessSync || fs.statSync)(test);\n return true;\n } catch (_) {\n return false;\n }\n};\n\nfunction findDependency(identifier, target) {\n const packagePath = resolve.sync(`${identifier}/package.json`);\n const nodeModules = identifier[0] === '@' ? path.join(packagePath, '..', '..', '..') : path.join(packagePath, '..', '..');\n const optionalDependencies = JSON.parse(fs.readFileSync(packagePath, 'utf8')).optionalDependencies;\n const name = Object.keys(optionalDependencies).find((name) => name.indexOf(target) >= 0);\n return name ? { name, version: optionalDependencies[name], nodeModules } : null;\n}\n\nconst bindings = {};\nexport default function ensureBindings(identifier, target, callback) {\n if (bindings[identifier] === undefined) bindings[identifier] = {};\n if (bindings[identifier][target] === undefined) {\n bindings[identifier][target] = resolveOnce((cb) => {\n const { name, version, nodeModules } = findDependency(identifier, target);\n const installString = version ? `${name}@${version}` : name;\n return existsSync(path.join(nodeModules, name)) ? cb() : installModule(installString, nodeModules, cb);\n });\n }\n bindings[identifier][target](callback);\n}\n\nconst bindingsSync = {};\nexport function sync(identifier, target) {\n if (bindingsSync[identifier] === undefined) bindingsSync[identifier] = {};\n if (bindingsSync[identifier][target] === undefined) {\n bindingsSync[identifier][target] = (() => {\n const { name, version, nodeModules } = findDependency(identifier, target);\n const installString = version ? `${name}@${version}` : name;\n return existsSync(path.join(nodeModules, name)) ? target : installModuleSync(installString, nodeModules);\n })();\n }\n}\n"],"names":["ensureBindings","sync","existsSync","test","fs","accessSync","statSync","_","findDependency","identifier","target","packagePath","resolve","nodeModules","path","join","optionalDependencies","JSON","parse","readFileSync","name","Object","keys","find","indexOf","version","bindings","callback","undefined","resolveOnce","cb","installString","installModule","bindingsSync","installModuleSync"],"mappings":";;;;;;;;;;;IAwBA,OAUC;eAVuBA;;IAaRC,IAAI;eAAJA;;;yDArCD;2DACE;2EACwC;8DACrC;oEACI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAExB,IAAMC,aAAa,SAACC;IAClB,IAAI;QACDC,CAAAA,WAAE,CAACC,UAAU,IAAID,WAAE,CAACE,QAAQ,AAAD,EAAGH;QAC/B,OAAO;IACT,EAAE,OAAOI,GAAG;QACV,OAAO;IACT;AACF;AAEA,SAASC,eAAeC,UAAU,EAAEC,MAAM;IACxC,IAAMC,cAAcC,gBAAO,CAACX,IAAI,CAAC,AAAC,GAAa,OAAXQ,YAAW;IAC/C,IAAMI,cAAcJ,UAAU,CAAC,EAAE,KAAK,MAAMK,aAAI,CAACC,IAAI,CAACJ,aAAa,MAAM,MAAM,QAAQG,aAAI,CAACC,IAAI,CAACJ,aAAa,MAAM;IACpH,IAAMK,uBAAuBC,KAAKC,KAAK,CAACd,WAAE,CAACe,YAAY,CAACR,aAAa,SAASK,oBAAoB;IAClG,IAAMI,OAAOC,OAAOC,IAAI,CAACN,sBAAsBO,IAAI,CAAC,SAACH;eAASA,KAAKI,OAAO,CAACd,WAAW;;IACtF,OAAOU,OAAO;QAAEA,MAAAA;QAAMK,SAAST,oBAAoB,CAACI,KAAK;QAAEP,aAAAA;IAAY,IAAI;AAC7E;AAEA,IAAMa,WAAW,CAAC;AACH,SAAS1B,eAAeS,UAAU,EAAEC,MAAM,EAAEiB,QAAQ;IACjE,IAAID,QAAQ,CAACjB,WAAW,KAAKmB,WAAWF,QAAQ,CAACjB,WAAW,GAAG,CAAC;IAChE,IAAIiB,QAAQ,CAACjB,WAAW,CAACC,OAAO,KAAKkB,WAAW;QAC9CF,QAAQ,CAACjB,WAAW,CAACC,OAAO,GAAGmB,IAAAA,sBAAW,EAAC,SAACC;YAC1C,IAAuCtB,kBAAAA,eAAeC,YAAYC,SAA1DU,OAA+BZ,gBAA/BY,MAAMK,UAAyBjB,gBAAzBiB,SAASZ,cAAgBL,gBAAhBK;YACvB,IAAMkB,gBAAgBN,UAAU,AAAC,GAAUA,OAARL,MAAK,KAAW,OAARK,WAAYL;YACvD,OAAOlB,WAAWY,aAAI,CAACC,IAAI,CAACF,aAAaO,SAASU,OAAOE,IAAAA,4BAAa,EAACD,eAAelB,aAAaiB;QACrG;IACF;IACAJ,QAAQ,CAACjB,WAAW,CAACC,OAAO,CAACiB;AAC/B;AAEA,IAAMM,eAAe,CAAC;AACf,SAAShC,KAAKQ,UAAU,EAAEC,MAAM;IACrC,IAAIuB,YAAY,CAACxB,WAAW,KAAKmB,WAAWK,YAAY,CAACxB,WAAW,GAAG,CAAC;IACxE,IAAIwB,YAAY,CAACxB,WAAW,CAACC,OAAO,KAAKkB,WAAW;QAClDK,YAAY,CAACxB,WAAW,CAACC,OAAO,GAAG,AAAC;YAClC,IAAuCF,kBAAAA,eAAeC,YAAYC,SAA1DU,OAA+BZ,gBAA/BY,MAAMK,UAAyBjB,gBAAzBiB,SAASZ,cAAgBL,gBAAhBK;YACvB,IAAMkB,gBAAgBN,UAAU,AAAC,GAAUA,OAARL,MAAK,KAAW,OAARK,WAAYL;YACvD,OAAOlB,WAAWY,aAAI,CAACC,IAAI,CAACF,aAAaO,SAASV,SAASwB,IAAAA,yBAAiB,EAACH,eAAelB;QAC9F;IACF;AACF"}
@@ -9,7 +9,7 @@ Object.defineProperty(exports, "default", {
9
9
  }
10
10
  });
11
11
  var _path = /*#__PURE__*/ _interop_require_default(require("path"));
12
- var _ensurecjs = require("../bindings/ensure.cjs");
12
+ var _ensureBindings = require("./ensureBindings.cjs");
13
13
  var _module = /*#__PURE__*/ _interop_require_default(require("module"));
14
14
  function _interop_require_default(obj) {
15
15
  return obj && obj.__esModule ? obj : {
@@ -18,7 +18,7 @@ function _interop_require_default(obj) {
18
18
  }
19
19
  var _require = typeof require === 'undefined' ? _module.default.createRequire(require("url").pathToFileURL(__filename).toString()) : require;
20
20
  function swcPrepareOptions(tsconfig) {
21
- (0, _ensurecjs.sync)('@swc/core', "".concat(process.platform, "-").concat(process.arch));
21
+ (0, _ensureBindings.sync)('@swc/core', "".concat(process.platform, "-").concat(process.arch));
22
22
  try {
23
23
  var ts = _require('typescript');
24
24
  var swc = _require('@swc/core');
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/swcPrepareOptions.ts"],"sourcesContent":["import path from 'path';\nimport { sync as ensureBindings } from '../bindings/ensure.cjs';\n\nimport Module from 'module';\nconst _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;\n\nimport type { TsConfigResult } from 'get-tsconfig-compat';\nexport default function swcPrepareOptions(tsconfig: TsConfigResult) {\n ensureBindings('@swc/core', `${process.platform}-${process.arch}`);\n try {\n const ts = _require('typescript');\n const swc = _require('@swc/core');\n const transpiler = _require('ts-node/transpilers/swc');\n const parsed = ts.parseJsonConfigFileContent(tsconfig.config, ts.sys, path.dirname(tsconfig.path));\n return transpiler.createSwcOptions(parsed.options, undefined, swc, 'swc');\n } catch (err) {\n console.log(`swcPrepareOptions failed: ${err.message}`);\n return {};\n }\n}\n"],"names":["swcPrepareOptions","_require","require","Module","createRequire","tsconfig","ensureBindings","process","platform","arch","ts","swc","transpiler","parsed","parseJsonConfigFileContent","config","sys","path","dirname","createSwcOptions","options","undefined","err","console","log","message"],"mappings":";;;;+BAOA;;;eAAwBA;;;2DAPP;yBACsB;6DAEpB;;;;;;AACnB,IAAMC,WAAW,OAAOC,YAAY,cAAcC,eAAM,CAACC,aAAa,CAAC,uDAAmBF;AAG3E,SAASF,kBAAkBK,QAAwB;IAChEC,IAAAA,eAAc,EAAC,aAAa,AAAC,GAAsBC,OAApBA,QAAQC,QAAQ,EAAC,KAAgB,OAAbD,QAAQE,IAAI;IAC/D,IAAI;QACF,IAAMC,KAAKT,SAAS;QACpB,IAAMU,MAAMV,SAAS;QACrB,IAAMW,aAAaX,SAAS;QAC5B,IAAMY,SAASH,GAAGI,0BAA0B,CAACT,SAASU,MAAM,EAAEL,GAAGM,GAAG,EAAEC,aAAI,CAACC,OAAO,CAACb,SAASY,IAAI;QAChG,OAAOL,WAAWO,gBAAgB,CAACN,OAAOO,OAAO,EAAEC,WAAWV,KAAK;IACrE,EAAE,OAAOW,KAAK;QACZC,QAAQC,GAAG,CAAC,AAAC,6BAAwC,OAAZF,IAAIG,OAAO;QACpD,OAAO,CAAC;IACV;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/swcPrepareOptions.ts"],"sourcesContent":["import path from 'path';\nimport { sync as ensureBindingsSync } from './ensureBindings';\n\nimport Module from 'module';\nconst _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;\n\nimport type { TsConfigResult } from 'get-tsconfig-compat';\nexport default function swcPrepareOptions(tsconfig: TsConfigResult) {\n ensureBindingsSync('@swc/core', `${process.platform}-${process.arch}`);\n try {\n const ts = _require('typescript');\n const swc = _require('@swc/core');\n const transpiler = _require('ts-node/transpilers/swc');\n const parsed = ts.parseJsonConfigFileContent(tsconfig.config, ts.sys, path.dirname(tsconfig.path));\n return transpiler.createSwcOptions(parsed.options, undefined, swc, 'swc');\n } catch (err) {\n console.log(`swcPrepareOptions failed: ${err.message}`);\n return {};\n }\n}\n"],"names":["swcPrepareOptions","_require","require","Module","createRequire","tsconfig","ensureBindingsSync","process","platform","arch","ts","swc","transpiler","parsed","parseJsonConfigFileContent","config","sys","path","dirname","createSwcOptions","options","undefined","err","console","log","message"],"mappings":";;;;+BAOA;;;eAAwBA;;;2DAPP;8BAC0B;6DAExB;;;;;;AACnB,IAAMC,WAAW,OAAOC,YAAY,cAAcC,eAAM,CAACC,aAAa,CAAC,uDAAmBF;AAG3E,SAASF,kBAAkBK,QAAwB;IAChEC,IAAAA,oBAAkB,EAAC,aAAa,AAAC,GAAsBC,OAApBA,QAAQC,QAAQ,EAAC,KAAgB,OAAbD,QAAQE,IAAI;IACnE,IAAI;QACF,IAAMC,KAAKT,SAAS;QACpB,IAAMU,MAAMV,SAAS;QACrB,IAAMW,aAAaX,SAAS;QAC5B,IAAMY,SAASH,GAAGI,0BAA0B,CAACT,SAASU,MAAM,EAAEL,GAAGM,GAAG,EAAEC,aAAI,CAACC,OAAO,CAACb,SAASY,IAAI;QAChG,OAAOL,WAAWO,gBAAgB,CAACN,OAAOO,OAAO,EAAEC,WAAWV,KAAK;IACrE,EAAE,OAAOW,KAAK;QACZC,QAAQC,GAAG,CAAC,AAAC,6BAAwC,OAAZF,IAAIG,OAAO;QACpD,OAAO,CAAC;IACV;AACF"}
@@ -12,7 +12,7 @@ var _fs = /*#__PURE__*/ _interop_require_default(require("fs"));
12
12
  var _path = /*#__PURE__*/ _interop_require_default(require("path"));
13
13
  var _mkdirpclassic = /*#__PURE__*/ _interop_require_default(require("mkdirp-classic"));
14
14
  var _queuecb = /*#__PURE__*/ _interop_require_default(require("queue-cb"));
15
- var _ensurecjs = /*#__PURE__*/ _interop_require_default(require("../bindings/ensure.cjs"));
15
+ var _ensureBindings = /*#__PURE__*/ _interop_require_default(require("./ensureBindings.cjs"));
16
16
  var _patchCJS = /*#__PURE__*/ _interop_require_default(require("../lib/patchCJS.cjs"));
17
17
  var _patchESM = /*#__PURE__*/ _interop_require_default(require("../lib/patchESM.cjs"));
18
18
  var _swcPrepareOptions = /*#__PURE__*/ _interop_require_default(require("../lib/swcPrepareOptions.cjs"));
@@ -76,7 +76,7 @@ function _object_spread_props(target, source) {
76
76
  }
77
77
  var _require = typeof require === 'undefined' ? _module.default.createRequire(require("url").pathToFileURL(__filename).toString()) : require;
78
78
  function transformFile(entry, dest, type, options, callback) {
79
- (0, _ensurecjs.default)('@swc/core', "".concat(process.platform, "-").concat(process.arch), function(err) {
79
+ (0, _ensureBindings.default)('@swc/core', "".concat(process.platform, "-").concat(process.arch), function(err) {
80
80
  if (err) return callback(err);
81
81
  var tsconfig = options.tsconfig;
82
82
  // overrides for cjs
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/transformFile.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport mkdirp from 'mkdirp-classic';\nimport Queue from 'queue-cb';\nimport ensureBindings from '../bindings/ensure.cjs';\n\nimport patchCJS from '../lib/patchCJS';\nimport patchESM from '../lib/patchESM';\nimport swcPrepareOptions from '../lib/swcPrepareOptions';\n\nimport Module from 'module';\nconst _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;\n\nexport default function transformFile(entry, dest, type, options, callback) {\n ensureBindings('@swc/core', `${process.platform}-${process.arch}`, (err) => {\n if (err) return callback(err);\n\n let tsconfig = options.tsconfig;\n\n // overrides for cjs\n if (type === 'cjs') {\n tsconfig = { ...tsconfig };\n tsconfig.config = { ...tsconfig.config };\n tsconfig.config.compilerOptions = { ...(tsconfig.config.compilerOptions || {}) };\n tsconfig.config.compilerOptions.module = 'CommonJS';\n tsconfig.config.compilerOptions.target = 'ES5';\n }\n\n const swcOptions = swcPrepareOptions(tsconfig);\n const swc = _require('@swc/core');\n\n swc\n .transformFile(entry.fullPath, {\n ...(entry.basename.endsWith('.tsx') || entry.basename.endsWith('.jsx') ? swcOptions.tsxOptions : swcOptions.nonTsxOptions),\n filename: entry.basename,\n })\n .then((output) => {\n const extTarget = type === 'esm' ? patchESM(entry, output, options) : patchCJS(entry, output, options);\n const ext = path.extname(entry.path);\n const outPath = path.join(dest, (ext ? entry.path.slice(0, -ext.length) : entry.path) + extTarget);\n\n mkdirp(path.dirname(outPath), () => {\n const queue = new Queue();\n queue.defer(fs.writeFile.bind(null, outPath, output.code, 'utf8'));\n !options.sourceMaps || queue.defer(fs.writeFile.bind(null, `${outPath}.map`, output.map, 'utf8'));\n queue.await((err) => (err ? callback(err) : callback(null, outPath)));\n });\n })\n .catch(callback);\n });\n}\n"],"names":["transformFile","_require","require","Module","createRequire","entry","dest","type","options","callback","ensureBindings","process","platform","arch","err","tsconfig","config","compilerOptions","module","target","swcOptions","swcPrepareOptions","swc","fullPath","basename","endsWith","tsxOptions","nonTsxOptions","filename","then","output","extTarget","patchESM","patchCJS","ext","path","extname","outPath","join","slice","length","mkdirp","dirname","queue","Queue","defer","fs","writeFile","bind","code","sourceMaps","map","await","catch"],"mappings":";;;;+BAaA;;;eAAwBA;;;yDAbT;2DACE;oEACE;8DACD;gEACS;+DAEN;+DACA;wEACS;6DAEX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACnB,IAAMC,WAAW,OAAOC,YAAY,cAAcC,eAAM,CAACC,aAAa,CAAC,uDAAmBF;AAE3E,SAASF,cAAcK,KAAK,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACxEC,IAAAA,kBAAc,EAAC,aAAa,AAAC,GAAsBC,OAApBA,QAAQC,QAAQ,EAAC,KAAgB,OAAbD,QAAQE,IAAI,GAAI,SAACC;QAClE,IAAIA,KAAK,OAAOL,SAASK;QAEzB,IAAIC,WAAWP,QAAQO,QAAQ;QAE/B,oBAAoB;QACpB,IAAIR,SAAS,OAAO;YAClBQ,WAAW,mBAAKA;YAChBA,SAASC,MAAM,GAAG,mBAAKD,SAASC,MAAM;YACtCD,SAASC,MAAM,CAACC,eAAe,GAAG,mBAAMF,SAASC,MAAM,CAACC,eAAe,IAAI,CAAC;YAC5EF,SAASC,MAAM,CAACC,eAAe,CAACC,MAAM,GAAG;YACzCH,SAASC,MAAM,CAACC,eAAe,CAACE,MAAM,GAAG;QAC3C;QAEA,IAAMC,aAAaC,IAAAA,0BAAiB,EAACN;QACrC,IAAMO,MAAMrB,SAAS;QAErBqB,IACGtB,aAAa,CAACK,MAAMkB,QAAQ,EAAE,wCACzBlB,MAAMmB,QAAQ,CAACC,QAAQ,CAAC,WAAWpB,MAAMmB,QAAQ,CAACC,QAAQ,CAAC,UAAUL,WAAWM,UAAU,GAAGN,WAAWO,aAAa;YACzHC,UAAUvB,MAAMmB,QAAQ;YAEzBK,IAAI,CAAC,SAACC;YACL,IAAMC,YAAYxB,SAAS,QAAQyB,IAAAA,iBAAQ,EAAC3B,OAAOyB,QAAQtB,WAAWyB,IAAAA,iBAAQ,EAAC5B,OAAOyB,QAAQtB;YAC9F,IAAM0B,MAAMC,aAAI,CAACC,OAAO,CAAC/B,MAAM8B,IAAI;YACnC,IAAME,UAAUF,aAAI,CAACG,IAAI,CAAChC,MAAM,AAAC4B,CAAAA,MAAM7B,MAAM8B,IAAI,CAACI,KAAK,CAAC,GAAG,CAACL,IAAIM,MAAM,IAAInC,MAAM8B,IAAI,AAAD,IAAKJ;YAExFU,IAAAA,sBAAM,EAACN,aAAI,CAACO,OAAO,CAACL,UAAU;gBAC5B,IAAMM,QAAQ,IAAIC,gBAAK;gBACvBD,MAAME,KAAK,CAACC,WAAE,CAACC,SAAS,CAACC,IAAI,CAAC,MAAMX,SAASP,OAAOmB,IAAI,EAAE;gBAC1D,CAACzC,QAAQ0C,UAAU,IAAIP,MAAME,KAAK,CAACC,WAAE,CAACC,SAAS,CAACC,IAAI,CAAC,MAAM,AAAC,GAAU,OAARX,SAAQ,SAAOP,OAAOqB,GAAG,EAAE;gBACzFR,MAAMS,KAAK,CAAC,SAACtC;2BAASA,MAAML,SAASK,OAAOL,SAAS,MAAM4B;;YAC7D;QACF,GACCgB,KAAK,CAAC5C;IACX;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/transformFile.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport mkdirp from 'mkdirp-classic';\nimport Queue from 'queue-cb';\nimport ensureBindings from './ensureBindings';\n\nimport patchCJS from '../lib/patchCJS';\nimport patchESM from '../lib/patchESM';\nimport swcPrepareOptions from '../lib/swcPrepareOptions';\n\nimport Module from 'module';\nconst _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;\n\nexport default function transformFile(entry, dest, type, options, callback) {\n ensureBindings('@swc/core', `${process.platform}-${process.arch}`, (err) => {\n if (err) return callback(err);\n\n let tsconfig = options.tsconfig;\n\n // overrides for cjs\n if (type === 'cjs') {\n tsconfig = { ...tsconfig };\n tsconfig.config = { ...tsconfig.config };\n tsconfig.config.compilerOptions = { ...(tsconfig.config.compilerOptions || {}) };\n tsconfig.config.compilerOptions.module = 'CommonJS';\n tsconfig.config.compilerOptions.target = 'ES5';\n }\n\n const swcOptions = swcPrepareOptions(tsconfig);\n const swc = _require('@swc/core');\n\n swc\n .transformFile(entry.fullPath, {\n ...(entry.basename.endsWith('.tsx') || entry.basename.endsWith('.jsx') ? swcOptions.tsxOptions : swcOptions.nonTsxOptions),\n filename: entry.basename,\n })\n .then((output) => {\n const extTarget = type === 'esm' ? patchESM(entry, output, options) : patchCJS(entry, output, options);\n const ext = path.extname(entry.path);\n const outPath = path.join(dest, (ext ? entry.path.slice(0, -ext.length) : entry.path) + extTarget);\n\n mkdirp(path.dirname(outPath), () => {\n const queue = new Queue();\n queue.defer(fs.writeFile.bind(null, outPath, output.code, 'utf8'));\n !options.sourceMaps || queue.defer(fs.writeFile.bind(null, `${outPath}.map`, output.map, 'utf8'));\n queue.await((err) => (err ? callback(err) : callback(null, outPath)));\n });\n })\n .catch(callback);\n });\n}\n"],"names":["transformFile","_require","require","Module","createRequire","entry","dest","type","options","callback","ensureBindings","process","platform","arch","err","tsconfig","config","compilerOptions","module","target","swcOptions","swcPrepareOptions","swc","fullPath","basename","endsWith","tsxOptions","nonTsxOptions","filename","then","output","extTarget","patchESM","patchCJS","ext","path","extname","outPath","join","slice","length","mkdirp","dirname","queue","Queue","defer","fs","writeFile","bind","code","sourceMaps","map","await","catch"],"mappings":";;;;+BAaA;;;eAAwBA;;;yDAbT;2DACE;oEACE;8DACD;qEACS;+DAEN;+DACA;wEACS;6DAEX;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACnB,IAAMC,WAAW,OAAOC,YAAY,cAAcC,eAAM,CAACC,aAAa,CAAC,uDAAmBF;AAE3E,SAASF,cAAcK,KAAK,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACxEC,IAAAA,uBAAc,EAAC,aAAa,AAAC,GAAsBC,OAApBA,QAAQC,QAAQ,EAAC,KAAgB,OAAbD,QAAQE,IAAI,GAAI,SAACC;QAClE,IAAIA,KAAK,OAAOL,SAASK;QAEzB,IAAIC,WAAWP,QAAQO,QAAQ;QAE/B,oBAAoB;QACpB,IAAIR,SAAS,OAAO;YAClBQ,WAAW,mBAAKA;YAChBA,SAASC,MAAM,GAAG,mBAAKD,SAASC,MAAM;YACtCD,SAASC,MAAM,CAACC,eAAe,GAAG,mBAAMF,SAASC,MAAM,CAACC,eAAe,IAAI,CAAC;YAC5EF,SAASC,MAAM,CAACC,eAAe,CAACC,MAAM,GAAG;YACzCH,SAASC,MAAM,CAACC,eAAe,CAACE,MAAM,GAAG;QAC3C;QAEA,IAAMC,aAAaC,IAAAA,0BAAiB,EAACN;QACrC,IAAMO,MAAMrB,SAAS;QAErBqB,IACGtB,aAAa,CAACK,MAAMkB,QAAQ,EAAE,wCACzBlB,MAAMmB,QAAQ,CAACC,QAAQ,CAAC,WAAWpB,MAAMmB,QAAQ,CAACC,QAAQ,CAAC,UAAUL,WAAWM,UAAU,GAAGN,WAAWO,aAAa;YACzHC,UAAUvB,MAAMmB,QAAQ;YAEzBK,IAAI,CAAC,SAACC;YACL,IAAMC,YAAYxB,SAAS,QAAQyB,IAAAA,iBAAQ,EAAC3B,OAAOyB,QAAQtB,WAAWyB,IAAAA,iBAAQ,EAAC5B,OAAOyB,QAAQtB;YAC9F,IAAM0B,MAAMC,aAAI,CAACC,OAAO,CAAC/B,MAAM8B,IAAI;YACnC,IAAME,UAAUF,aAAI,CAACG,IAAI,CAAChC,MAAM,AAAC4B,CAAAA,MAAM7B,MAAM8B,IAAI,CAACI,KAAK,CAAC,GAAG,CAACL,IAAIM,MAAM,IAAInC,MAAM8B,IAAI,AAAD,IAAKJ;YAExFU,IAAAA,sBAAM,EAACN,aAAI,CAACO,OAAO,CAACL,UAAU;gBAC5B,IAAMM,QAAQ,IAAIC,gBAAK;gBACvBD,MAAME,KAAK,CAACC,WAAE,CAACC,SAAS,CAACC,IAAI,CAAC,MAAMX,SAASP,OAAOmB,IAAI,EAAE;gBAC1D,CAACzC,QAAQ0C,UAAU,IAAIP,MAAME,KAAK,CAACC,WAAE,CAACC,SAAS,CAACC,IAAI,CAAC,MAAM,AAAC,GAAU,OAARX,SAAQ,SAAOP,OAAOqB,GAAG,EAAE;gBACzFR,MAAMS,KAAK,CAAC,SAACtC;2BAASA,MAAML,SAASK,OAAOL,SAAS,MAAM4B;;YAC7D;QACF,GACCgB,KAAK,CAAC5C;IACX;AACF"}
@@ -0,0 +1,47 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ import installModule, { sync as installModuleSync } from 'install-module-linked';
4
+ import resolve from 'resolve';
5
+ import resolveOnce from 'resolve-once-cb';
6
+ const existsSync = (test)=>{
7
+ try {
8
+ (fs.accessSync || fs.statSync)(test);
9
+ return true;
10
+ } catch (_) {
11
+ return false;
12
+ }
13
+ };
14
+ function findDependency(identifier, target) {
15
+ const packagePath = resolve.sync(`${identifier}/package.json`);
16
+ const nodeModules = identifier[0] === '@' ? path.join(packagePath, '..', '..', '..') : path.join(packagePath, '..', '..');
17
+ const optionalDependencies = JSON.parse(fs.readFileSync(packagePath, 'utf8')).optionalDependencies;
18
+ const name = Object.keys(optionalDependencies).find((name)=>name.indexOf(target) >= 0);
19
+ return name ? {
20
+ name,
21
+ version: optionalDependencies[name],
22
+ nodeModules
23
+ } : null;
24
+ }
25
+ const bindings = {};
26
+ export default function ensureBindings(identifier, target, callback) {
27
+ if (bindings[identifier] === undefined) bindings[identifier] = {};
28
+ if (bindings[identifier][target] === undefined) {
29
+ bindings[identifier][target] = resolveOnce((cb)=>{
30
+ const { name, version, nodeModules } = findDependency(identifier, target);
31
+ const installString = version ? `${name}@${version}` : name;
32
+ return existsSync(path.join(nodeModules, name)) ? cb() : installModule(installString, nodeModules, cb);
33
+ });
34
+ }
35
+ bindings[identifier][target](callback);
36
+ }
37
+ const bindingsSync = {};
38
+ export function sync(identifier, target) {
39
+ if (bindingsSync[identifier] === undefined) bindingsSync[identifier] = {};
40
+ if (bindingsSync[identifier][target] === undefined) {
41
+ bindingsSync[identifier][target] = (()=>{
42
+ const { name, version, nodeModules } = findDependency(identifier, target);
43
+ const installString = version ? `${name}@${version}` : name;
44
+ return existsSync(path.join(nodeModules, name)) ? target : installModuleSync(installString, nodeModules);
45
+ })();
46
+ }
47
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/ensureBindings.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport installModule, { sync as installModuleSync } from 'install-module-linked';\nimport resolve from 'resolve';\nimport resolveOnce from 'resolve-once-cb';\n\nconst existsSync = (test) => {\n try {\n (fs.accessSync || fs.statSync)(test);\n return true;\n } catch (_) {\n return false;\n }\n};\n\nfunction findDependency(identifier, target) {\n const packagePath = resolve.sync(`${identifier}/package.json`);\n const nodeModules = identifier[0] === '@' ? path.join(packagePath, '..', '..', '..') : path.join(packagePath, '..', '..');\n const optionalDependencies = JSON.parse(fs.readFileSync(packagePath, 'utf8')).optionalDependencies;\n const name = Object.keys(optionalDependencies).find((name) => name.indexOf(target) >= 0);\n return name ? { name, version: optionalDependencies[name], nodeModules } : null;\n}\n\nconst bindings = {};\nexport default function ensureBindings(identifier, target, callback) {\n if (bindings[identifier] === undefined) bindings[identifier] = {};\n if (bindings[identifier][target] === undefined) {\n bindings[identifier][target] = resolveOnce((cb) => {\n const { name, version, nodeModules } = findDependency(identifier, target);\n const installString = version ? `${name}@${version}` : name;\n return existsSync(path.join(nodeModules, name)) ? cb() : installModule(installString, nodeModules, cb);\n });\n }\n bindings[identifier][target](callback);\n}\n\nconst bindingsSync = {};\nexport function sync(identifier, target) {\n if (bindingsSync[identifier] === undefined) bindingsSync[identifier] = {};\n if (bindingsSync[identifier][target] === undefined) {\n bindingsSync[identifier][target] = (() => {\n const { name, version, nodeModules } = findDependency(identifier, target);\n const installString = version ? `${name}@${version}` : name;\n return existsSync(path.join(nodeModules, name)) ? target : installModuleSync(installString, nodeModules);\n })();\n }\n}\n"],"names":["fs","path","installModule","sync","installModuleSync","resolve","resolveOnce","existsSync","test","accessSync","statSync","_","findDependency","identifier","target","packagePath","nodeModules","join","optionalDependencies","JSON","parse","readFileSync","name","Object","keys","find","indexOf","version","bindings","ensureBindings","callback","undefined","cb","installString","bindingsSync"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,iBAAiBC,QAAQC,iBAAiB,QAAQ,wBAAwB;AACjF,OAAOC,aAAa,UAAU;AAC9B,OAAOC,iBAAiB,kBAAkB;AAE1C,MAAMC,aAAa,CAACC;IAClB,IAAI;QACDR,CAAAA,GAAGS,UAAU,IAAIT,GAAGU,QAAQ,AAAD,EAAGF;QAC/B,OAAO;IACT,EAAE,OAAOG,GAAG;QACV,OAAO;IACT;AACF;AAEA,SAASC,eAAeC,UAAU,EAAEC,MAAM;IACxC,MAAMC,cAAcV,QAAQF,IAAI,CAAC,GAAGU,WAAW,aAAa,CAAC;IAC7D,MAAMG,cAAcH,UAAU,CAAC,EAAE,KAAK,MAAMZ,KAAKgB,IAAI,CAACF,aAAa,MAAM,MAAM,QAAQd,KAAKgB,IAAI,CAACF,aAAa,MAAM;IACpH,MAAMG,uBAAuBC,KAAKC,KAAK,CAACpB,GAAGqB,YAAY,CAACN,aAAa,SAASG,oBAAoB;IAClG,MAAMI,OAAOC,OAAOC,IAAI,CAACN,sBAAsBO,IAAI,CAAC,CAACH,OAASA,KAAKI,OAAO,CAACZ,WAAW;IACtF,OAAOQ,OAAO;QAAEA;QAAMK,SAAST,oBAAoB,CAACI,KAAK;QAAEN;IAAY,IAAI;AAC7E;AAEA,MAAMY,WAAW,CAAC;AAClB,eAAe,SAASC,eAAehB,UAAU,EAAEC,MAAM,EAAEgB,QAAQ;IACjE,IAAIF,QAAQ,CAACf,WAAW,KAAKkB,WAAWH,QAAQ,CAACf,WAAW,GAAG,CAAC;IAChE,IAAIe,QAAQ,CAACf,WAAW,CAACC,OAAO,KAAKiB,WAAW;QAC9CH,QAAQ,CAACf,WAAW,CAACC,OAAO,GAAGR,YAAY,CAAC0B;YAC1C,MAAM,EAAEV,IAAI,EAAEK,OAAO,EAAEX,WAAW,EAAE,GAAGJ,eAAeC,YAAYC;YAClE,MAAMmB,gBAAgBN,UAAU,GAAGL,KAAK,CAAC,EAAEK,SAAS,GAAGL;YACvD,OAAOf,WAAWN,KAAKgB,IAAI,CAACD,aAAaM,SAASU,OAAO9B,cAAc+B,eAAejB,aAAagB;QACrG;IACF;IACAJ,QAAQ,CAACf,WAAW,CAACC,OAAO,CAACgB;AAC/B;AAEA,MAAMI,eAAe,CAAC;AACtB,OAAO,SAAS/B,KAAKU,UAAU,EAAEC,MAAM;IACrC,IAAIoB,YAAY,CAACrB,WAAW,KAAKkB,WAAWG,YAAY,CAACrB,WAAW,GAAG,CAAC;IACxE,IAAIqB,YAAY,CAACrB,WAAW,CAACC,OAAO,KAAKiB,WAAW;QAClDG,YAAY,CAACrB,WAAW,CAACC,OAAO,GAAG,AAAC,CAAA;YAClC,MAAM,EAAEQ,IAAI,EAAEK,OAAO,EAAEX,WAAW,EAAE,GAAGJ,eAAeC,YAAYC;YAClE,MAAMmB,gBAAgBN,UAAU,GAAGL,KAAK,CAAC,EAAEK,SAAS,GAAGL;YACvD,OAAOf,WAAWN,KAAKgB,IAAI,CAACD,aAAaM,SAASR,SAASV,kBAAkB6B,eAAejB;QAC9F,CAAA;IACF;AACF"}
@@ -1,9 +1,9 @@
1
1
  import path from 'path';
2
- import { sync as ensureBindings } from '../bindings/ensure.cjs';
2
+ import { sync as ensureBindingsSync } from './ensureBindings.mjs';
3
3
  import Module from 'module';
4
4
  const _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;
5
5
  export default function swcPrepareOptions(tsconfig) {
6
- ensureBindings('@swc/core', `${process.platform}-${process.arch}`);
6
+ ensureBindingsSync('@swc/core', `${process.platform}-${process.arch}`);
7
7
  try {
8
8
  const ts = _require('typescript');
9
9
  const swc = _require('@swc/core');
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/swcPrepareOptions.ts"],"sourcesContent":["import path from 'path';\nimport { sync as ensureBindings } from '../bindings/ensure.cjs';\n\nimport Module from 'module';\nconst _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;\n\nimport type { TsConfigResult } from 'get-tsconfig-compat';\nexport default function swcPrepareOptions(tsconfig: TsConfigResult) {\n ensureBindings('@swc/core', `${process.platform}-${process.arch}`);\n try {\n const ts = _require('typescript');\n const swc = _require('@swc/core');\n const transpiler = _require('ts-node/transpilers/swc');\n const parsed = ts.parseJsonConfigFileContent(tsconfig.config, ts.sys, path.dirname(tsconfig.path));\n return transpiler.createSwcOptions(parsed.options, undefined, swc, 'swc');\n } catch (err) {\n console.log(`swcPrepareOptions failed: ${err.message}`);\n return {};\n }\n}\n"],"names":["path","sync","ensureBindings","Module","_require","require","createRequire","url","swcPrepareOptions","tsconfig","process","platform","arch","ts","swc","transpiler","parsed","parseJsonConfigFileContent","config","sys","dirname","createSwcOptions","options","undefined","err","console","log","message"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,SAASC,QAAQC,cAAc,QAAQ,yBAAyB;AAEhE,OAAOC,YAAY,SAAS;AAC5B,MAAMC,WAAW,OAAOC,YAAY,cAAcF,OAAOG,aAAa,CAAC,YAAYC,GAAG,IAAIF;AAG1F,eAAe,SAASG,kBAAkBC,QAAwB;IAChEP,eAAe,aAAa,GAAGQ,QAAQC,QAAQ,CAAC,CAAC,EAAED,QAAQE,IAAI,EAAE;IACjE,IAAI;QACF,MAAMC,KAAKT,SAAS;QACpB,MAAMU,MAAMV,SAAS;QACrB,MAAMW,aAAaX,SAAS;QAC5B,MAAMY,SAASH,GAAGI,0BAA0B,CAACR,SAASS,MAAM,EAAEL,GAAGM,GAAG,EAAEnB,KAAKoB,OAAO,CAACX,SAAST,IAAI;QAChG,OAAOe,WAAWM,gBAAgB,CAACL,OAAOM,OAAO,EAAEC,WAAWT,KAAK;IACrE,EAAE,OAAOU,KAAK;QACZC,QAAQC,GAAG,CAAC,CAAC,0BAA0B,EAAEF,IAAIG,OAAO,EAAE;QACtD,OAAO,CAAC;IACV;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/swcPrepareOptions.ts"],"sourcesContent":["import path from 'path';\nimport { sync as ensureBindingsSync } from './ensureBindings';\n\nimport Module from 'module';\nconst _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;\n\nimport type { TsConfigResult } from 'get-tsconfig-compat';\nexport default function swcPrepareOptions(tsconfig: TsConfigResult) {\n ensureBindingsSync('@swc/core', `${process.platform}-${process.arch}`);\n try {\n const ts = _require('typescript');\n const swc = _require('@swc/core');\n const transpiler = _require('ts-node/transpilers/swc');\n const parsed = ts.parseJsonConfigFileContent(tsconfig.config, ts.sys, path.dirname(tsconfig.path));\n return transpiler.createSwcOptions(parsed.options, undefined, swc, 'swc');\n } catch (err) {\n console.log(`swcPrepareOptions failed: ${err.message}`);\n return {};\n }\n}\n"],"names":["path","sync","ensureBindingsSync","Module","_require","require","createRequire","url","swcPrepareOptions","tsconfig","process","platform","arch","ts","swc","transpiler","parsed","parseJsonConfigFileContent","config","sys","dirname","createSwcOptions","options","undefined","err","console","log","message"],"mappings":"AAAA,OAAOA,UAAU,OAAO;AACxB,SAASC,QAAQC,kBAAkB,QAAQ,mBAAmB;AAE9D,OAAOC,YAAY,SAAS;AAC5B,MAAMC,WAAW,OAAOC,YAAY,cAAcF,OAAOG,aAAa,CAAC,YAAYC,GAAG,IAAIF;AAG1F,eAAe,SAASG,kBAAkBC,QAAwB;IAChEP,mBAAmB,aAAa,GAAGQ,QAAQC,QAAQ,CAAC,CAAC,EAAED,QAAQE,IAAI,EAAE;IACrE,IAAI;QACF,MAAMC,KAAKT,SAAS;QACpB,MAAMU,MAAMV,SAAS;QACrB,MAAMW,aAAaX,SAAS;QAC5B,MAAMY,SAASH,GAAGI,0BAA0B,CAACR,SAASS,MAAM,EAAEL,GAAGM,GAAG,EAAEnB,KAAKoB,OAAO,CAACX,SAAST,IAAI;QAChG,OAAOe,WAAWM,gBAAgB,CAACL,OAAOM,OAAO,EAAEC,WAAWT,KAAK;IACrE,EAAE,OAAOU,KAAK;QACZC,QAAQC,GAAG,CAAC,CAAC,0BAA0B,EAAEF,IAAIG,OAAO,EAAE;QACtD,OAAO,CAAC;IACV;AACF"}
@@ -2,7 +2,7 @@ import fs from 'fs';
2
2
  import path from 'path';
3
3
  import mkdirp from 'mkdirp-classic';
4
4
  import Queue from 'queue-cb';
5
- import ensureBindings from '../bindings/ensure.cjs';
5
+ import ensureBindings from './ensureBindings.mjs';
6
6
  import patchCJS from '../lib/patchCJS.mjs';
7
7
  import patchESM from '../lib/patchESM.mjs';
8
8
  import swcPrepareOptions from '../lib/swcPrepareOptions.mjs';
@@ -1 +1 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/transformFile.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport mkdirp from 'mkdirp-classic';\nimport Queue from 'queue-cb';\nimport ensureBindings from '../bindings/ensure.cjs';\n\nimport patchCJS from '../lib/patchCJS';\nimport patchESM from '../lib/patchESM';\nimport swcPrepareOptions from '../lib/swcPrepareOptions';\n\nimport Module from 'module';\nconst _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;\n\nexport default function transformFile(entry, dest, type, options, callback) {\n ensureBindings('@swc/core', `${process.platform}-${process.arch}`, (err) => {\n if (err) return callback(err);\n\n let tsconfig = options.tsconfig;\n\n // overrides for cjs\n if (type === 'cjs') {\n tsconfig = { ...tsconfig };\n tsconfig.config = { ...tsconfig.config };\n tsconfig.config.compilerOptions = { ...(tsconfig.config.compilerOptions || {}) };\n tsconfig.config.compilerOptions.module = 'CommonJS';\n tsconfig.config.compilerOptions.target = 'ES5';\n }\n\n const swcOptions = swcPrepareOptions(tsconfig);\n const swc = _require('@swc/core');\n\n swc\n .transformFile(entry.fullPath, {\n ...(entry.basename.endsWith('.tsx') || entry.basename.endsWith('.jsx') ? swcOptions.tsxOptions : swcOptions.nonTsxOptions),\n filename: entry.basename,\n })\n .then((output) => {\n const extTarget = type === 'esm' ? patchESM(entry, output, options) : patchCJS(entry, output, options);\n const ext = path.extname(entry.path);\n const outPath = path.join(dest, (ext ? entry.path.slice(0, -ext.length) : entry.path) + extTarget);\n\n mkdirp(path.dirname(outPath), () => {\n const queue = new Queue();\n queue.defer(fs.writeFile.bind(null, outPath, output.code, 'utf8'));\n !options.sourceMaps || queue.defer(fs.writeFile.bind(null, `${outPath}.map`, output.map, 'utf8'));\n queue.await((err) => (err ? callback(err) : callback(null, outPath)));\n });\n })\n .catch(callback);\n });\n}\n"],"names":["fs","path","mkdirp","Queue","ensureBindings","patchCJS","patchESM","swcPrepareOptions","Module","_require","require","createRequire","url","transformFile","entry","dest","type","options","callback","process","platform","arch","err","tsconfig","config","compilerOptions","module","target","swcOptions","swc","fullPath","basename","endsWith","tsxOptions","nonTsxOptions","filename","then","output","extTarget","ext","extname","outPath","join","slice","length","dirname","queue","defer","writeFile","bind","code","sourceMaps","map","await","catch"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,YAAY,iBAAiB;AACpC,OAAOC,WAAW,WAAW;AAC7B,OAAOC,oBAAoB,yBAAyB;AAEpD,OAAOC,cAAc,kBAAkB;AACvC,OAAOC,cAAc,kBAAkB;AACvC,OAAOC,uBAAuB,2BAA2B;AAEzD,OAAOC,YAAY,SAAS;AAC5B,MAAMC,WAAW,OAAOC,YAAY,cAAcF,OAAOG,aAAa,CAAC,YAAYC,GAAG,IAAIF;AAE1F,eAAe,SAASG,cAAcC,KAAK,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACxEd,eAAe,aAAa,GAAGe,QAAQC,QAAQ,CAAC,CAAC,EAAED,QAAQE,IAAI,EAAE,EAAE,CAACC;QAClE,IAAIA,KAAK,OAAOJ,SAASI;QAEzB,IAAIC,WAAWN,QAAQM,QAAQ;QAE/B,oBAAoB;QACpB,IAAIP,SAAS,OAAO;YAClBO,WAAW;gBAAE,GAAGA,QAAQ;YAAC;YACzBA,SAASC,MAAM,GAAG;gBAAE,GAAGD,SAASC,MAAM;YAAC;YACvCD,SAASC,MAAM,CAACC,eAAe,GAAG;gBAAE,GAAIF,SAASC,MAAM,CAACC,eAAe,IAAI,CAAC,CAAC;YAAE;YAC/EF,SAASC,MAAM,CAACC,eAAe,CAACC,MAAM,GAAG;YACzCH,SAASC,MAAM,CAACC,eAAe,CAACE,MAAM,GAAG;QAC3C;QAEA,MAAMC,aAAarB,kBAAkBgB;QACrC,MAAMM,MAAMpB,SAAS;QAErBoB,IACGhB,aAAa,CAACC,MAAMgB,QAAQ,EAAE;YAC7B,GAAIhB,MAAMiB,QAAQ,CAACC,QAAQ,CAAC,WAAWlB,MAAMiB,QAAQ,CAACC,QAAQ,CAAC,UAAUJ,WAAWK,UAAU,GAAGL,WAAWM,aAAa;YACzHC,UAAUrB,MAAMiB,QAAQ;QAC1B,GACCK,IAAI,CAAC,CAACC;YACL,MAAMC,YAAYtB,SAAS,QAAQV,SAASQ,OAAOuB,QAAQpB,WAAWZ,SAASS,OAAOuB,QAAQpB;YAC9F,MAAMsB,MAAMtC,KAAKuC,OAAO,CAAC1B,MAAMb,IAAI;YACnC,MAAMwC,UAAUxC,KAAKyC,IAAI,CAAC3B,MAAM,AAACwB,CAAAA,MAAMzB,MAAMb,IAAI,CAAC0C,KAAK,CAAC,GAAG,CAACJ,IAAIK,MAAM,IAAI9B,MAAMb,IAAI,AAAD,IAAKqC;YAExFpC,OAAOD,KAAK4C,OAAO,CAACJ,UAAU;gBAC5B,MAAMK,QAAQ,IAAI3C;gBAClB2C,MAAMC,KAAK,CAAC/C,GAAGgD,SAAS,CAACC,IAAI,CAAC,MAAMR,SAASJ,OAAOa,IAAI,EAAE;gBAC1D,CAACjC,QAAQkC,UAAU,IAAIL,MAAMC,KAAK,CAAC/C,GAAGgD,SAAS,CAACC,IAAI,CAAC,MAAM,GAAGR,QAAQ,IAAI,CAAC,EAAEJ,OAAOe,GAAG,EAAE;gBACzFN,MAAMO,KAAK,CAAC,CAAC/B,MAASA,MAAMJ,SAASI,OAAOJ,SAAS,MAAMuB;YAC7D;QACF,GACCa,KAAK,CAACpC;IACX;AACF"}
1
+ {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/lib/transformFile.ts"],"sourcesContent":["import fs from 'fs';\nimport path from 'path';\nimport mkdirp from 'mkdirp-classic';\nimport Queue from 'queue-cb';\nimport ensureBindings from './ensureBindings';\n\nimport patchCJS from '../lib/patchCJS';\nimport patchESM from '../lib/patchESM';\nimport swcPrepareOptions from '../lib/swcPrepareOptions';\n\nimport Module from 'module';\nconst _require = typeof require === 'undefined' ? Module.createRequire(import.meta.url) : require;\n\nexport default function transformFile(entry, dest, type, options, callback) {\n ensureBindings('@swc/core', `${process.platform}-${process.arch}`, (err) => {\n if (err) return callback(err);\n\n let tsconfig = options.tsconfig;\n\n // overrides for cjs\n if (type === 'cjs') {\n tsconfig = { ...tsconfig };\n tsconfig.config = { ...tsconfig.config };\n tsconfig.config.compilerOptions = { ...(tsconfig.config.compilerOptions || {}) };\n tsconfig.config.compilerOptions.module = 'CommonJS';\n tsconfig.config.compilerOptions.target = 'ES5';\n }\n\n const swcOptions = swcPrepareOptions(tsconfig);\n const swc = _require('@swc/core');\n\n swc\n .transformFile(entry.fullPath, {\n ...(entry.basename.endsWith('.tsx') || entry.basename.endsWith('.jsx') ? swcOptions.tsxOptions : swcOptions.nonTsxOptions),\n filename: entry.basename,\n })\n .then((output) => {\n const extTarget = type === 'esm' ? patchESM(entry, output, options) : patchCJS(entry, output, options);\n const ext = path.extname(entry.path);\n const outPath = path.join(dest, (ext ? entry.path.slice(0, -ext.length) : entry.path) + extTarget);\n\n mkdirp(path.dirname(outPath), () => {\n const queue = new Queue();\n queue.defer(fs.writeFile.bind(null, outPath, output.code, 'utf8'));\n !options.sourceMaps || queue.defer(fs.writeFile.bind(null, `${outPath}.map`, output.map, 'utf8'));\n queue.await((err) => (err ? callback(err) : callback(null, outPath)));\n });\n })\n .catch(callback);\n });\n}\n"],"names":["fs","path","mkdirp","Queue","ensureBindings","patchCJS","patchESM","swcPrepareOptions","Module","_require","require","createRequire","url","transformFile","entry","dest","type","options","callback","process","platform","arch","err","tsconfig","config","compilerOptions","module","target","swcOptions","swc","fullPath","basename","endsWith","tsxOptions","nonTsxOptions","filename","then","output","extTarget","ext","extname","outPath","join","slice","length","dirname","queue","defer","writeFile","bind","code","sourceMaps","map","await","catch"],"mappings":"AAAA,OAAOA,QAAQ,KAAK;AACpB,OAAOC,UAAU,OAAO;AACxB,OAAOC,YAAY,iBAAiB;AACpC,OAAOC,WAAW,WAAW;AAC7B,OAAOC,oBAAoB,mBAAmB;AAE9C,OAAOC,cAAc,kBAAkB;AACvC,OAAOC,cAAc,kBAAkB;AACvC,OAAOC,uBAAuB,2BAA2B;AAEzD,OAAOC,YAAY,SAAS;AAC5B,MAAMC,WAAW,OAAOC,YAAY,cAAcF,OAAOG,aAAa,CAAC,YAAYC,GAAG,IAAIF;AAE1F,eAAe,SAASG,cAAcC,KAAK,EAAEC,IAAI,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IACxEd,eAAe,aAAa,GAAGe,QAAQC,QAAQ,CAAC,CAAC,EAAED,QAAQE,IAAI,EAAE,EAAE,CAACC;QAClE,IAAIA,KAAK,OAAOJ,SAASI;QAEzB,IAAIC,WAAWN,QAAQM,QAAQ;QAE/B,oBAAoB;QACpB,IAAIP,SAAS,OAAO;YAClBO,WAAW;gBAAE,GAAGA,QAAQ;YAAC;YACzBA,SAASC,MAAM,GAAG;gBAAE,GAAGD,SAASC,MAAM;YAAC;YACvCD,SAASC,MAAM,CAACC,eAAe,GAAG;gBAAE,GAAIF,SAASC,MAAM,CAACC,eAAe,IAAI,CAAC,CAAC;YAAE;YAC/EF,SAASC,MAAM,CAACC,eAAe,CAACC,MAAM,GAAG;YACzCH,SAASC,MAAM,CAACC,eAAe,CAACE,MAAM,GAAG;QAC3C;QAEA,MAAMC,aAAarB,kBAAkBgB;QACrC,MAAMM,MAAMpB,SAAS;QAErBoB,IACGhB,aAAa,CAACC,MAAMgB,QAAQ,EAAE;YAC7B,GAAIhB,MAAMiB,QAAQ,CAACC,QAAQ,CAAC,WAAWlB,MAAMiB,QAAQ,CAACC,QAAQ,CAAC,UAAUJ,WAAWK,UAAU,GAAGL,WAAWM,aAAa;YACzHC,UAAUrB,MAAMiB,QAAQ;QAC1B,GACCK,IAAI,CAAC,CAACC;YACL,MAAMC,YAAYtB,SAAS,QAAQV,SAASQ,OAAOuB,QAAQpB,WAAWZ,SAASS,OAAOuB,QAAQpB;YAC9F,MAAMsB,MAAMtC,KAAKuC,OAAO,CAAC1B,MAAMb,IAAI;YACnC,MAAMwC,UAAUxC,KAAKyC,IAAI,CAAC3B,MAAM,AAACwB,CAAAA,MAAMzB,MAAMb,IAAI,CAAC0C,KAAK,CAAC,GAAG,CAACJ,IAAIK,MAAM,IAAI9B,MAAMb,IAAI,AAAD,IAAKqC;YAExFpC,OAAOD,KAAK4C,OAAO,CAACJ,UAAU;gBAC5B,MAAMK,QAAQ,IAAI3C;gBAClB2C,MAAMC,KAAK,CAAC/C,GAAGgD,SAAS,CAACC,IAAI,CAAC,MAAMR,SAASJ,OAAOa,IAAI,EAAE;gBAC1D,CAACjC,QAAQkC,UAAU,IAAIL,MAAMC,KAAK,CAAC/C,GAAGgD,SAAS,CAACC,IAAI,CAAC,MAAM,GAAGR,QAAQ,IAAI,CAAC,EAAEJ,OAAOe,GAAG,EAAE;gBACzFN,MAAMO,KAAK,CAAC,CAAC/B,MAASA,MAAMJ,SAASI,OAAOJ,SAAS,MAAMuB;YAC7D;QACF,GACCa,KAAK,CAACpC;IACX;AACF"}
@@ -0,0 +1,2 @@
1
+ export default function ensureBindings(identifier: any, target: any, callback: any): void;
2
+ export declare function sync(identifier: any, target: any): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ts-swc-transform",
3
- "version": "1.13.11",
3
+ "version": "1.13.12",
4
4
  "description": "Typescript transformers for swc. Supports Node >= 0.8",
5
5
  "keywords": [
6
6
  "matcher",
@@ -47,9 +47,8 @@
47
47
  "@swc/core": "*",
48
48
  "exit": "^0.1.2",
49
49
  "fs-iterator": "^5.2.10",
50
- "function-exec-sync": "^1.2.5",
51
50
  "get-tsconfig-compat": "^2.0.3",
52
- "install-module-linked": "^1.1.8",
51
+ "install-module-linked": "^1.1.10",
53
52
  "is-absolute": "^1.0.0",
54
53
  "minimatch": "^3.1.2",
55
54
  "mkdirp-classic": "^0.5.3",
@@ -1,38 +0,0 @@
1
- "use strict";
2
- var path = require('path');
3
- var fs = require('fs');
4
- var resolveOnce = require('resolve-once-cb');
5
- var findDependency = require('./findDependency.cjs');
6
- var workerPath = path.join(__dirname, 'install.cjs');
7
- var existsSync = function(test) {
8
- try {
9
- (fs.accessSync || fs.statSync)(test);
10
- return true;
11
- } catch (_) {
12
- return false;
13
- }
14
- };
15
- var bindings = {};
16
- module.exports = function ensureBindings(identifier, target, callback) {
17
- if (bindings[identifier] === undefined) bindings[identifier] = {};
18
- if (bindings[identifier][target] === undefined) {
19
- bindings[identifier][target] = resolveOnce(function(cb) {
20
- var _findDependency = findDependency(identifier, target), name = _findDependency.name, nodeModules = _findDependency.nodeModules;
21
- return existsSync(path.join(nodeModules, name)) ? cb() : require(workerPath)(identifier, target, cb);
22
- });
23
- }
24
- bindings[identifier][target](callback);
25
- };
26
- var bindingsSync = {};
27
- module.exports.sync = function(identifier, target) {
28
- if (bindingsSync[identifier] === undefined) bindingsSync[identifier] = {};
29
- if (bindingsSync[identifier][target] === undefined) {
30
- bindingsSync[identifier][target] = function() {
31
- var _findDependency = findDependency(identifier, target), name = _findDependency.name, nodeModules = _findDependency.nodeModules;
32
- return existsSync(path.join(nodeModules, name)) ? target : require('function-exec-sync')({
33
- callbacks: true
34
- }, workerPath, identifier, target);
35
- }();
36
- }
37
- };
38
- /* 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/bindings/ensure.cjs"],"sourcesContent":["const path = require('path');\nconst fs = require('fs');\nconst resolveOnce = require('resolve-once-cb');\nconst findDependency = require('./findDependency.cjs');\n\nconst workerPath = path.join(__dirname, 'install.cjs');\n\nconst existsSync = (test) => {\n try {\n (fs.accessSync || fs.statSync)(test);\n return true;\n } catch (_) {\n return false;\n }\n};\n\nconst bindings = {};\nmodule.exports = function ensureBindings(identifier, target, callback) {\n if (bindings[identifier] === undefined) bindings[identifier] = {};\n if (bindings[identifier][target] === undefined) {\n bindings[identifier][target] = resolveOnce((cb) => {\n const { name, nodeModules } = findDependency(identifier, target);\n return existsSync(path.join(nodeModules, name)) ? cb() : require(workerPath)(identifier, target, cb);\n });\n }\n bindings[identifier][target](callback);\n};\n\nconst bindingsSync = {};\nmodule.exports.sync = (identifier, target) => {\n if (bindingsSync[identifier] === undefined) bindingsSync[identifier] = {};\n if (bindingsSync[identifier][target] === undefined) {\n bindingsSync[identifier][target] = (() => {\n const { name, nodeModules } = findDependency(identifier, target);\n return existsSync(path.join(nodeModules, name)) ? target : require('function-exec-sync')({ callbacks: true }, workerPath, identifier, target);\n })();\n }\n};\n"],"names":["path","require","fs","resolveOnce","findDependency","workerPath","join","__dirname","existsSync","test","accessSync","statSync","_","bindings","module","exports","ensureBindings","identifier","target","callback","undefined","cb","name","nodeModules","bindingsSync","sync","callbacks"],"mappings":";AAAA,IAAMA,OAAOC,QAAQ;AACrB,IAAMC,KAAKD,QAAQ;AACnB,IAAME,cAAcF,QAAQ;AAC5B,IAAMG,iBAAiBH,QAAQ;AAE/B,IAAMI,aAAaL,KAAKM,IAAI,CAACC,WAAW;AAExC,IAAMC,aAAa,SAACC;IAClB,IAAI;QACDP,CAAAA,GAAGQ,UAAU,IAAIR,GAAGS,QAAQ,AAAD,EAAGF;QAC/B,OAAO;IACT,EAAE,OAAOG,GAAG;QACV,OAAO;IACT;AACF;AAEA,IAAMC,WAAW,CAAC;AAClBC,OAAOC,OAAO,GAAG,SAASC,eAAeC,UAAU,EAAEC,MAAM,EAAEC,QAAQ;IACnE,IAAIN,QAAQ,CAACI,WAAW,KAAKG,WAAWP,QAAQ,CAACI,WAAW,GAAG,CAAC;IAChE,IAAIJ,QAAQ,CAACI,WAAW,CAACC,OAAO,KAAKE,WAAW;QAC9CP,QAAQ,CAACI,WAAW,CAACC,OAAO,GAAGf,YAAY,SAACkB;YAC1C,IAA8BjB,kBAAAA,eAAea,YAAYC,SAAjDI,OAAsBlB,gBAAtBkB,MAAMC,cAAgBnB,gBAAhBmB;YACd,OAAOf,WAAWR,KAAKM,IAAI,CAACiB,aAAaD,SAASD,OAAOpB,QAAQI,YAAYY,YAAYC,QAAQG;QACnG;IACF;IACAR,QAAQ,CAACI,WAAW,CAACC,OAAO,CAACC;AAC/B;AAEA,IAAMK,eAAe,CAAC;AACtBV,OAAOC,OAAO,CAACU,IAAI,GAAG,SAACR,YAAYC;IACjC,IAAIM,YAAY,CAACP,WAAW,KAAKG,WAAWI,YAAY,CAACP,WAAW,GAAG,CAAC;IACxE,IAAIO,YAAY,CAACP,WAAW,CAACC,OAAO,KAAKE,WAAW;QAClDI,YAAY,CAACP,WAAW,CAACC,OAAO,GAAG,AAAC;YAClC,IAA8Bd,kBAAAA,eAAea,YAAYC,SAAjDI,OAAsBlB,gBAAtBkB,MAAMC,cAAgBnB,gBAAhBmB;YACd,OAAOf,WAAWR,KAAKM,IAAI,CAACiB,aAAaD,SAASJ,SAASjB,QAAQ,sBAAsB;gBAAEyB,WAAW;YAAK,GAAGrB,YAAYY,YAAYC;QACxI;IACF;AACF"}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var path = require('path');
3
- var fs = require('fs');
4
- var resolve = require('resolve');
5
- module.exports = function findDependency(identifier, target) {
6
- var packagePath = resolve.sync("".concat(identifier, "/package.json"));
7
- var nodeModules = identifier[0] === '@' ? path.join(packagePath, '..', '..', '..') : path.join(packagePath, '..', '..');
8
- var optionalDependencies = JSON.parse(fs.readFileSync(packagePath, 'utf8')).optionalDependencies;
9
- var name = Object.keys(optionalDependencies).find(function(name) {
10
- return name.indexOf(target) >= 0;
11
- });
12
- return name ? {
13
- name: name,
14
- version: optionalDependencies[name],
15
- nodeModules: nodeModules
16
- } : null;
17
- };
18
- /* 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/bindings/findDependency.cjs"],"sourcesContent":["const path = require('path');\nconst fs = require('fs');\nconst resolve = require('resolve');\n\nmodule.exports = function findDependency(identifier, target) {\n const packagePath = resolve.sync(`${identifier}/package.json`);\n const nodeModules = identifier[0] === '@' ? path.join(packagePath, '..', '..', '..') : path.join(packagePath, '..', '..');\n const optionalDependencies = JSON.parse(fs.readFileSync(packagePath, 'utf8')).optionalDependencies;\n const name = Object.keys(optionalDependencies).find((name) => name.indexOf(target) >= 0);\n return name ? { name, version: optionalDependencies[name], nodeModules } : null;\n};\n"],"names":["path","require","fs","resolve","module","exports","findDependency","identifier","target","packagePath","sync","nodeModules","join","optionalDependencies","JSON","parse","readFileSync","name","Object","keys","find","indexOf","version"],"mappings":";AAAA,IAAMA,OAAOC,QAAQ;AACrB,IAAMC,KAAKD,QAAQ;AACnB,IAAME,UAAUF,QAAQ;AAExBG,OAAOC,OAAO,GAAG,SAASC,eAAeC,UAAU,EAAEC,MAAM;IACzD,IAAMC,cAAcN,QAAQO,IAAI,CAAC,AAAC,GAAa,OAAXH,YAAW;IAC/C,IAAMI,cAAcJ,UAAU,CAAC,EAAE,KAAK,MAAMP,KAAKY,IAAI,CAACH,aAAa,MAAM,MAAM,QAAQT,KAAKY,IAAI,CAACH,aAAa,MAAM;IACpH,IAAMI,uBAAuBC,KAAKC,KAAK,CAACb,GAAGc,YAAY,CAACP,aAAa,SAASI,oBAAoB;IAClG,IAAMI,OAAOC,OAAOC,IAAI,CAACN,sBAAsBO,IAAI,CAAC,SAACH;eAASA,KAAKI,OAAO,CAACb,WAAW;;IACtF,OAAOS,OAAO;QAAEA,MAAAA;QAAMK,SAAST,oBAAoB,CAACI,KAAK;QAAEN,aAAAA;IAAY,IAAI;AAC7E"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- var path = require('path');
3
- var installModule = require('install-module-linked');
4
- var findDependency = require('./findDependency.cjs');
5
- module.exports = function installBindings(identifier, target, callback) {
6
- var _findDependency = findDependency(identifier, target), name = _findDependency.name, version = _findDependency.version, nodeModules = _findDependency.nodeModules;
7
- var installString = version ? "".concat(name, "@").concat(version) : name;
8
- installModule(installString, nodeModules, function(err) {
9
- console.log("installed ".concat(path.join(nodeModules, name)).concat(!err ? '' : ' with errors: ${err.message}'));
10
- callback(err);
11
- });
12
- };
13
- /* 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/bindings/install.cjs"],"sourcesContent":["const path = require('path');\nconst installModule = require('install-module-linked');\nconst findDependency = require('./findDependency.cjs');\n\nmodule.exports = function installBindings(identifier, target, callback) {\n const { name, version, nodeModules } = findDependency(identifier, target);\n const installString = version ? `${name}@${version}` : name;\n\n installModule(installString, nodeModules, (err) => {\n console.log(`installed ${path.join(nodeModules, name)}${!err ? '' : ' with errors: ${err.message}'}`);\n callback(err);\n });\n};\n"],"names":["path","require","installModule","findDependency","module","exports","installBindings","identifier","target","callback","name","version","nodeModules","installString","err","console","log","join"],"mappings":";AAAA,IAAMA,OAAOC,QAAQ;AACrB,IAAMC,gBAAgBD,QAAQ;AAC9B,IAAME,iBAAiBF,QAAQ;AAE/BG,OAAOC,OAAO,GAAG,SAASC,gBAAgBC,UAAU,EAAEC,MAAM,EAAEC,QAAQ;IACpE,IAAuCN,kBAAAA,eAAeI,YAAYC,SAA1DE,OAA+BP,gBAA/BO,MAAMC,UAAyBR,gBAAzBQ,SAASC,cAAgBT,gBAAhBS;IACvB,IAAMC,gBAAgBF,UAAU,AAAC,GAAUA,OAARD,MAAK,KAAW,OAARC,WAAYD;IAEvDR,cAAcW,eAAeD,aAAa,SAACE;QACzCC,QAAQC,GAAG,CAAC,AAAC,aAA2C,OAA/BhB,KAAKiB,IAAI,CAACL,aAAaF,OAAmD,OAA3C,CAACI,MAAM,KAAK;QACpEL,SAASK;IACX;AACF"}
@@ -1,36 +0,0 @@
1
- const path = require('path');
2
- const fs = require('fs');
3
- const resolveOnce = require('resolve-once-cb');
4
- const findDependency = require('./findDependency.cjs');
5
- const workerPath = path.join(__dirname, 'install.cjs');
6
- const existsSync = (test)=>{
7
- try {
8
- (fs.accessSync || fs.statSync)(test);
9
- return true;
10
- } catch (_) {
11
- return false;
12
- }
13
- };
14
- const bindings = {};
15
- module.exports = function ensureBindings(identifier, target, callback) {
16
- if (bindings[identifier] === undefined) bindings[identifier] = {};
17
- if (bindings[identifier][target] === undefined) {
18
- bindings[identifier][target] = resolveOnce((cb)=>{
19
- const { name, nodeModules } = findDependency(identifier, target);
20
- return existsSync(path.join(nodeModules, name)) ? cb() : require(workerPath)(identifier, target, cb);
21
- });
22
- }
23
- bindings[identifier][target](callback);
24
- };
25
- const bindingsSync = {};
26
- module.exports.sync = (identifier, target)=>{
27
- if (bindingsSync[identifier] === undefined) bindingsSync[identifier] = {};
28
- if (bindingsSync[identifier][target] === undefined) {
29
- bindingsSync[identifier][target] = (()=>{
30
- const { name, nodeModules } = findDependency(identifier, target);
31
- return existsSync(path.join(nodeModules, name)) ? target : require('function-exec-sync')({
32
- callbacks: true
33
- }, workerPath, identifier, target);
34
- })();
35
- }
36
- };
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/bindings/ensure.cjs"],"sourcesContent":["const path = require('path');\nconst fs = require('fs');\nconst resolveOnce = require('resolve-once-cb');\nconst findDependency = require('./findDependency.cjs');\n\nconst workerPath = path.join(__dirname, 'install.cjs');\n\nconst existsSync = (test) => {\n try {\n (fs.accessSync || fs.statSync)(test);\n return true;\n } catch (_) {\n return false;\n }\n};\n\nconst bindings = {};\nmodule.exports = function ensureBindings(identifier, target, callback) {\n if (bindings[identifier] === undefined) bindings[identifier] = {};\n if (bindings[identifier][target] === undefined) {\n bindings[identifier][target] = resolveOnce((cb) => {\n const { name, nodeModules } = findDependency(identifier, target);\n return existsSync(path.join(nodeModules, name)) ? cb() : require(workerPath)(identifier, target, cb);\n });\n }\n bindings[identifier][target](callback);\n};\n\nconst bindingsSync = {};\nmodule.exports.sync = (identifier, target) => {\n if (bindingsSync[identifier] === undefined) bindingsSync[identifier] = {};\n if (bindingsSync[identifier][target] === undefined) {\n bindingsSync[identifier][target] = (() => {\n const { name, nodeModules } = findDependency(identifier, target);\n return existsSync(path.join(nodeModules, name)) ? target : require('function-exec-sync')({ callbacks: true }, workerPath, identifier, target);\n })();\n }\n};\n"],"names":["path","require","fs","resolveOnce","findDependency","workerPath","join","__dirname","existsSync","test","accessSync","statSync","_","bindings","module","exports","ensureBindings","identifier","target","callback","undefined","cb","name","nodeModules","bindingsSync","sync","callbacks"],"mappings":"AAAA,MAAMA,OAAOC,QAAQ;AACrB,MAAMC,KAAKD,QAAQ;AACnB,MAAME,cAAcF,QAAQ;AAC5B,MAAMG,iBAAiBH,QAAQ;AAE/B,MAAMI,aAAaL,KAAKM,IAAI,CAACC,WAAW;AAExC,MAAMC,aAAa,CAACC;IAClB,IAAI;QACDP,CAAAA,GAAGQ,UAAU,IAAIR,GAAGS,QAAQ,AAAD,EAAGF;QAC/B,OAAO;IACT,EAAE,OAAOG,GAAG;QACV,OAAO;IACT;AACF;AAEA,MAAMC,WAAW,CAAC;AAClBC,OAAOC,OAAO,GAAG,SAASC,eAAeC,UAAU,EAAEC,MAAM,EAAEC,QAAQ;IACnE,IAAIN,QAAQ,CAACI,WAAW,KAAKG,WAAWP,QAAQ,CAACI,WAAW,GAAG,CAAC;IAChE,IAAIJ,QAAQ,CAACI,WAAW,CAACC,OAAO,KAAKE,WAAW;QAC9CP,QAAQ,CAACI,WAAW,CAACC,OAAO,GAAGf,YAAY,CAACkB;YAC1C,MAAM,EAAEC,IAAI,EAAEC,WAAW,EAAE,GAAGnB,eAAea,YAAYC;YACzD,OAAOV,WAAWR,KAAKM,IAAI,CAACiB,aAAaD,SAASD,OAAOpB,QAAQI,YAAYY,YAAYC,QAAQG;QACnG;IACF;IACAR,QAAQ,CAACI,WAAW,CAACC,OAAO,CAACC;AAC/B;AAEA,MAAMK,eAAe,CAAC;AACtBV,OAAOC,OAAO,CAACU,IAAI,GAAG,CAACR,YAAYC;IACjC,IAAIM,YAAY,CAACP,WAAW,KAAKG,WAAWI,YAAY,CAACP,WAAW,GAAG,CAAC;IACxE,IAAIO,YAAY,CAACP,WAAW,CAACC,OAAO,KAAKE,WAAW;QAClDI,YAAY,CAACP,WAAW,CAACC,OAAO,GAAG,AAAC,CAAA;YAClC,MAAM,EAAEI,IAAI,EAAEC,WAAW,EAAE,GAAGnB,eAAea,YAAYC;YACzD,OAAOV,WAAWR,KAAKM,IAAI,CAACiB,aAAaD,SAASJ,SAASjB,QAAQ,sBAAsB;gBAAEyB,WAAW;YAAK,GAAGrB,YAAYY,YAAYC;QACxI,CAAA;IACF;AACF"}
@@ -1,14 +0,0 @@
1
- const path = require('path');
2
- const fs = require('fs');
3
- const resolve = require('resolve');
4
- module.exports = function findDependency(identifier, target) {
5
- const packagePath = resolve.sync(`${identifier}/package.json`);
6
- const nodeModules = identifier[0] === '@' ? path.join(packagePath, '..', '..', '..') : path.join(packagePath, '..', '..');
7
- const optionalDependencies = JSON.parse(fs.readFileSync(packagePath, 'utf8')).optionalDependencies;
8
- const name = Object.keys(optionalDependencies).find((name)=>name.indexOf(target) >= 0);
9
- return name ? {
10
- name,
11
- version: optionalDependencies[name],
12
- nodeModules
13
- } : null;
14
- };
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/bindings/findDependency.cjs"],"sourcesContent":["const path = require('path');\nconst fs = require('fs');\nconst resolve = require('resolve');\n\nmodule.exports = function findDependency(identifier, target) {\n const packagePath = resolve.sync(`${identifier}/package.json`);\n const nodeModules = identifier[0] === '@' ? path.join(packagePath, '..', '..', '..') : path.join(packagePath, '..', '..');\n const optionalDependencies = JSON.parse(fs.readFileSync(packagePath, 'utf8')).optionalDependencies;\n const name = Object.keys(optionalDependencies).find((name) => name.indexOf(target) >= 0);\n return name ? { name, version: optionalDependencies[name], nodeModules } : null;\n};\n"],"names":["path","require","fs","resolve","module","exports","findDependency","identifier","target","packagePath","sync","nodeModules","join","optionalDependencies","JSON","parse","readFileSync","name","Object","keys","find","indexOf","version"],"mappings":"AAAA,MAAMA,OAAOC,QAAQ;AACrB,MAAMC,KAAKD,QAAQ;AACnB,MAAME,UAAUF,QAAQ;AAExBG,OAAOC,OAAO,GAAG,SAASC,eAAeC,UAAU,EAAEC,MAAM;IACzD,MAAMC,cAAcN,QAAQO,IAAI,CAAC,GAAGH,WAAW,aAAa,CAAC;IAC7D,MAAMI,cAAcJ,UAAU,CAAC,EAAE,KAAK,MAAMP,KAAKY,IAAI,CAACH,aAAa,MAAM,MAAM,QAAQT,KAAKY,IAAI,CAACH,aAAa,MAAM;IACpH,MAAMI,uBAAuBC,KAAKC,KAAK,CAACb,GAAGc,YAAY,CAACP,aAAa,SAASI,oBAAoB;IAClG,MAAMI,OAAOC,OAAOC,IAAI,CAACN,sBAAsBO,IAAI,CAAC,CAACH,OAASA,KAAKI,OAAO,CAACb,WAAW;IACtF,OAAOS,OAAO;QAAEA;QAAMK,SAAST,oBAAoB,CAACI,KAAK;QAAEN;IAAY,IAAI;AAC7E"}
@@ -1,11 +0,0 @@
1
- const path = require('path');
2
- const installModule = require('install-module-linked');
3
- const findDependency = require('./findDependency.cjs');
4
- module.exports = function installBindings(identifier, target, callback) {
5
- const { name, version, nodeModules } = findDependency(identifier, target);
6
- const installString = version ? `${name}@${version}` : name;
7
- installModule(installString, nodeModules, (err)=>{
8
- console.log(`installed ${path.join(nodeModules, name)}${!err ? '' : ' with errors: ${err.message}'}`);
9
- callback(err);
10
- });
11
- };
@@ -1 +0,0 @@
1
- {"version":3,"sources":["/Users/kevin/Dev/OpenSource/typescript/ts-swc-transform/src/bindings/install.cjs"],"sourcesContent":["const path = require('path');\nconst installModule = require('install-module-linked');\nconst findDependency = require('./findDependency.cjs');\n\nmodule.exports = function installBindings(identifier, target, callback) {\n const { name, version, nodeModules } = findDependency(identifier, target);\n const installString = version ? `${name}@${version}` : name;\n\n installModule(installString, nodeModules, (err) => {\n console.log(`installed ${path.join(nodeModules, name)}${!err ? '' : ' with errors: ${err.message}'}`);\n callback(err);\n });\n};\n"],"names":["path","require","installModule","findDependency","module","exports","installBindings","identifier","target","callback","name","version","nodeModules","installString","err","console","log","join"],"mappings":"AAAA,MAAMA,OAAOC,QAAQ;AACrB,MAAMC,gBAAgBD,QAAQ;AAC9B,MAAME,iBAAiBF,QAAQ;AAE/BG,OAAOC,OAAO,GAAG,SAASC,gBAAgBC,UAAU,EAAEC,MAAM,EAAEC,QAAQ;IACpE,MAAM,EAAEC,IAAI,EAAEC,OAAO,EAAEC,WAAW,EAAE,GAAGT,eAAeI,YAAYC;IAClE,MAAMK,gBAAgBF,UAAU,GAAGD,KAAK,CAAC,EAAEC,SAAS,GAAGD;IAEvDR,cAAcW,eAAeD,aAAa,CAACE;QACzCC,QAAQC,GAAG,CAAC,CAAC,UAAU,EAAEhB,KAAKiB,IAAI,CAACL,aAAaF,QAAQ,CAACI,MAAM,KAAK,gCAAgC;QACpGL,SAASK;IACX;AACF"}
@@ -1,5 +0,0 @@
1
- declare function _exports(identifier: any, target: any, callback: any): void;
2
- declare namespace _exports {
3
- function sync(identifier: any, target: any): void;
4
- }
5
- export = _exports;
@@ -1,6 +0,0 @@
1
- declare function _exports(identifier: any, target: any): {
2
- name: string;
3
- version: any;
4
- nodeModules: string;
5
- };
6
- export = _exports;
@@ -1,2 +0,0 @@
1
- declare function _exports(identifier: any, target: any, callback: any): void;
2
- export = _exports;