Skip to content

Commit c4eb50e

Browse files
author
Daniel Del Core
committed
Attempt to use tsx
1 parent 37bba48 commit c4eb50e

File tree

3 files changed

+180
-34
lines changed

3 files changed

+180
-34
lines changed

packages/fetcher/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@
2020
"chalk": "^4.1.0",
2121
"fs-extra": "^9.1.0",
2222
"globby": "^11.1.0",
23-
"live-plugin-manager": "^0.18.1"
23+
"live-plugin-manager": "^0.18.1",
24+
"tsx": "^4.19.1"
2425
},
2526
"engines": {
2627
"node": ">=14"

packages/fetcher/src/index.ts

Lines changed: 5 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -5,39 +5,12 @@ import globby from 'globby';
55
import { PluginManager } from 'live-plugin-manager';
66

77
import { Config } from '@hypermod/types';
8+
import { register } from 'tsx/esm/api';
89

9-
// This configuration allows us to require TypeScript config files directly
10-
const { DEFAULT_EXTENSIONS } = require('@babel/core');
11-
const presets = [];
12-
13-
let presetEnv;
14-
try {
15-
presetEnv = require('@babel/preset-env');
16-
presets.push([presetEnv.default, { targets: { node: true } }]);
17-
} catch (_) {}
18-
19-
require('@babel/register')({
20-
configFile: false,
21-
babelrc: false,
22-
presets: [...presets, require('@babel/preset-typescript').default],
23-
plugins: [
24-
require('@babel/plugin-transform-class-properties').default,
25-
require('@babel/plugin-transform-nullish-coalescing-operator').default,
26-
require('@babel/plugin-transform-optional-chaining').default,
27-
require('@babel/plugin-transform-modules-commonjs').default,
28-
require('@babel/plugin-transform-private-methods').default,
29-
],
30-
extensions: [...DEFAULT_EXTENSIONS, '.ts', '.tsx'],
31-
// By default, babel register only compiles things inside the current working directory.
32-
// https://github.com/babel/babel/blob/2a4f16236656178e84b05b8915aab9261c55782c/packages/babel-register/src/node.js#L140-L157
33-
ignore: [
34-
// Ignore parser related files
35-
/@babel\/parser/,
36-
/\/flow-parser\//,
37-
/\/recast\//,
38-
/\/ast-types\//,
39-
],
40-
});
10+
/**
11+
* Register the TSX plugin to allow require TS(X) files.
12+
*/
13+
register();
4114

4215
export interface ConfigMeta {
4316
filePath: string;

yarn.lock

Lines changed: 173 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1276,6 +1276,126 @@
12761276
dependencies:
12771277
"@jridgewell/trace-mapping" "0.3.9"
12781278

1279+
"@esbuild/aix-ppc64@0.23.1":
1280+
version "0.23.1"
1281+
resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.23.1.tgz#51299374de171dbd80bb7d838e1cfce9af36f353"
1282+
integrity sha512-6VhYk1diRqrhBAqpJEdjASR/+WVRtfjpqKuNw11cLiaWpAT/Uu+nokB+UJnevzy/P9C/ty6AOe0dwueMrGh/iQ==
1283+
1284+
"@esbuild/android-arm64@0.23.1":
1285+
version "0.23.1"
1286+
resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.23.1.tgz#58565291a1fe548638adb9c584237449e5e14018"
1287+
integrity sha512-xw50ipykXcLstLeWH7WRdQuysJqejuAGPd30vd1i5zSyKK3WE+ijzHmLKxdiCMtH1pHz78rOg0BKSYOSB/2Khw==
1288+
1289+
"@esbuild/android-arm@0.23.1":
1290+
version "0.23.1"
1291+
resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.23.1.tgz#5eb8c652d4c82a2421e3395b808e6d9c42c862ee"
1292+
integrity sha512-uz6/tEy2IFm9RYOyvKl88zdzZfwEfKZmnX9Cj1BHjeSGNuGLuMD1kR8y5bteYmwqKm1tj8m4cb/aKEorr6fHWQ==
1293+
1294+
"@esbuild/android-x64@0.23.1":
1295+
version "0.23.1"
1296+
resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.23.1.tgz#ae19d665d2f06f0f48a6ac9a224b3f672e65d517"
1297+
integrity sha512-nlN9B69St9BwUoB+jkyU090bru8L0NA3yFvAd7k8dNsVH8bi9a8cUAUSEcEEgTp2z3dbEDGJGfP6VUnkQnlReg==
1298+
1299+
"@esbuild/darwin-arm64@0.23.1":
1300+
version "0.23.1"
1301+
resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.23.1.tgz#05b17f91a87e557b468a9c75e9d85ab10c121b16"
1302+
integrity sha512-YsS2e3Wtgnw7Wq53XXBLcV6JhRsEq8hkfg91ESVadIrzr9wO6jJDMZnCQbHm1Guc5t/CdDiFSSfWP58FNuvT3Q==
1303+
1304+
"@esbuild/darwin-x64@0.23.1":
1305+
version "0.23.1"
1306+
resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.23.1.tgz#c58353b982f4e04f0d022284b8ba2733f5ff0931"
1307+
integrity sha512-aClqdgTDVPSEGgoCS8QDG37Gu8yc9lTHNAQlsztQ6ENetKEO//b8y31MMu2ZaPbn4kVsIABzVLXYLhCGekGDqw==
1308+
1309+
"@esbuild/freebsd-arm64@0.23.1":
1310+
version "0.23.1"
1311+
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.23.1.tgz#f9220dc65f80f03635e1ef96cfad5da1f446f3bc"
1312+
integrity sha512-h1k6yS8/pN/NHlMl5+v4XPfikhJulk4G+tKGFIOwURBSFzE8bixw1ebjluLOjfwtLqY0kewfjLSrO6tN2MgIhA==
1313+
1314+
"@esbuild/freebsd-x64@0.23.1":
1315+
version "0.23.1"
1316+
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.23.1.tgz#69bd8511fa013b59f0226d1609ac43f7ce489730"
1317+
integrity sha512-lK1eJeyk1ZX8UklqFd/3A60UuZ/6UVfGT2LuGo3Wp4/z7eRTRYY+0xOu2kpClP+vMTi9wKOfXi2vjUpO1Ro76g==
1318+
1319+
"@esbuild/linux-arm64@0.23.1":
1320+
version "0.23.1"
1321+
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.23.1.tgz#8050af6d51ddb388c75653ef9871f5ccd8f12383"
1322+
integrity sha512-/93bf2yxencYDnItMYV/v116zff6UyTjo4EtEQjUBeGiVpMmffDNUyD9UN2zV+V3LRV3/on4xdZ26NKzn6754g==
1323+
1324+
"@esbuild/linux-arm@0.23.1":
1325+
version "0.23.1"
1326+
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.23.1.tgz#ecaabd1c23b701070484990db9a82f382f99e771"
1327+
integrity sha512-CXXkzgn+dXAPs3WBwE+Kvnrf4WECwBdfjfeYHpMeVxWE0EceB6vhWGShs6wi0IYEqMSIzdOF1XjQ/Mkm5d7ZdQ==
1328+
1329+
"@esbuild/linux-ia32@0.23.1":
1330+
version "0.23.1"
1331+
resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.23.1.tgz#3ed2273214178109741c09bd0687098a0243b333"
1332+
integrity sha512-VTN4EuOHwXEkXzX5nTvVY4s7E/Krz7COC8xkftbbKRYAl96vPiUssGkeMELQMOnLOJ8k3BY1+ZY52tttZnHcXQ==
1333+
1334+
"@esbuild/linux-loong64@0.23.1":
1335+
version "0.23.1"
1336+
resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.23.1.tgz#a0fdf440b5485c81b0fbb316b08933d217f5d3ac"
1337+
integrity sha512-Vx09LzEoBa5zDnieH8LSMRToj7ir/Jeq0Gu6qJ/1GcBq9GkfoEAoXvLiW1U9J1qE/Y/Oyaq33w5p2ZWrNNHNEw==
1338+
1339+
"@esbuild/linux-mips64el@0.23.1":
1340+
version "0.23.1"
1341+
resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.23.1.tgz#e11a2806346db8375b18f5e104c5a9d4e81807f6"
1342+
integrity sha512-nrFzzMQ7W4WRLNUOU5dlWAqa6yVeI0P78WKGUo7lg2HShq/yx+UYkeNSE0SSfSure0SqgnsxPvmAUu/vu0E+3Q==
1343+
1344+
"@esbuild/linux-ppc64@0.23.1":
1345+
version "0.23.1"
1346+
resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.23.1.tgz#06a2744c5eaf562b1a90937855b4d6cf7c75ec96"
1347+
integrity sha512-dKN8fgVqd0vUIjxuJI6P/9SSSe/mB9rvA98CSH2sJnlZ/OCZWO1DJvxj8jvKTfYUdGfcq2dDxoKaC6bHuTlgcw==
1348+
1349+
"@esbuild/linux-riscv64@0.23.1":
1350+
version "0.23.1"
1351+
resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.23.1.tgz#65b46a2892fc0d1af4ba342af3fe0fa4a8fe08e7"
1352+
integrity sha512-5AV4Pzp80fhHL83JM6LoA6pTQVWgB1HovMBsLQ9OZWLDqVY8MVobBXNSmAJi//Csh6tcY7e7Lny2Hg1tElMjIA==
1353+
1354+
"@esbuild/linux-s390x@0.23.1":
1355+
version "0.23.1"
1356+
resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.23.1.tgz#e71ea18c70c3f604e241d16e4e5ab193a9785d6f"
1357+
integrity sha512-9ygs73tuFCe6f6m/Tb+9LtYxWR4c9yg7zjt2cYkjDbDpV/xVn+68cQxMXCjUpYwEkze2RcU/rMnfIXNRFmSoDw==
1358+
1359+
"@esbuild/linux-x64@0.23.1":
1360+
version "0.23.1"
1361+
resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz#d47f97391e80690d4dfe811a2e7d6927ad9eed24"
1362+
integrity sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==
1363+
1364+
"@esbuild/netbsd-x64@0.23.1":
1365+
version "0.23.1"
1366+
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.23.1.tgz#44e743c9778d57a8ace4b72f3c6b839a3b74a653"
1367+
integrity sha512-aevEkCNu7KlPRpYLjwmdcuNz6bDFiE7Z8XC4CPqExjTvrHugh28QzUXVOZtiYghciKUacNktqxdpymplil1beA==
1368+
1369+
"@esbuild/openbsd-arm64@0.23.1":
1370+
version "0.23.1"
1371+
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.23.1.tgz#05c5a1faf67b9881834758c69f3e51b7dee015d7"
1372+
integrity sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==
1373+
1374+
"@esbuild/openbsd-x64@0.23.1":
1375+
version "0.23.1"
1376+
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.23.1.tgz#2e58ae511bacf67d19f9f2dcd9e8c5a93f00c273"
1377+
integrity sha512-aY2gMmKmPhxfU+0EdnN+XNtGbjfQgwZj43k8G3fyrDM/UdZww6xrWxmDkuz2eCZchqVeABjV5BpildOrUbBTqA==
1378+
1379+
"@esbuild/sunos-x64@0.23.1":
1380+
version "0.23.1"
1381+
resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.23.1.tgz#adb022b959d18d3389ac70769cef5a03d3abd403"
1382+
integrity sha512-RBRT2gqEl0IKQABT4XTj78tpk9v7ehp+mazn2HbUeZl1YMdaGAQqhapjGTCe7uw7y0frDi4gS0uHzhvpFuI1sA==
1383+
1384+
"@esbuild/win32-arm64@0.23.1":
1385+
version "0.23.1"
1386+
resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.23.1.tgz#84906f50c212b72ec360f48461d43202f4c8b9a2"
1387+
integrity sha512-4O+gPR5rEBe2FpKOVyiJ7wNDPA8nGzDuJ6gN4okSA1gEOYZ67N8JPk58tkWtdtPeLz7lBnY6I5L3jdsr3S+A6A==
1388+
1389+
"@esbuild/win32-ia32@0.23.1":
1390+
version "0.23.1"
1391+
resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.23.1.tgz#5e3eacc515820ff729e90d0cb463183128e82fac"
1392+
integrity sha512-BcaL0Vn6QwCwre3Y717nVHZbAa4UBEigzFm6VdsVdT/MbZ38xoj1X9HPkZhbmaBGUD1W8vxAfffbDe8bA6AKnQ==
1393+
1394+
"@esbuild/win32-x64@0.23.1":
1395+
version "0.23.1"
1396+
resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.23.1.tgz#81fd50d11e2c32b2d6241470e3185b70c7b30699"
1397+
integrity sha512-BHpFFeslkWrXWyUPnbKm+xYYVYruCinGcftSBaa8zoF9hZO4BcSCFUvHVTtzpIY6YzUnYtuEhZ+C9iEXjxnasg==
1398+
12791399
"@eslint-community/eslint-utils@^4.2.0":
12801400
version "4.4.0"
12811401
resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz"
@@ -4167,6 +4287,36 @@ es-to-primitive@^1.2.1:
41674287
is-date-object "^1.0.1"
41684288
is-symbol "^1.0.2"
41694289

4290+
esbuild@~0.23.0:
4291+
version "0.23.1"
4292+
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.23.1.tgz#40fdc3f9265ec0beae6f59824ade1bd3d3d2dab8"
4293+
integrity sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==
4294+
optionalDependencies:
4295+
"@esbuild/aix-ppc64" "0.23.1"
4296+
"@esbuild/android-arm" "0.23.1"
4297+
"@esbuild/android-arm64" "0.23.1"
4298+
"@esbuild/android-x64" "0.23.1"
4299+
"@esbuild/darwin-arm64" "0.23.1"
4300+
"@esbuild/darwin-x64" "0.23.1"
4301+
"@esbuild/freebsd-arm64" "0.23.1"
4302+
"@esbuild/freebsd-x64" "0.23.1"
4303+
"@esbuild/linux-arm" "0.23.1"
4304+
"@esbuild/linux-arm64" "0.23.1"
4305+
"@esbuild/linux-ia32" "0.23.1"
4306+
"@esbuild/linux-loong64" "0.23.1"
4307+
"@esbuild/linux-mips64el" "0.23.1"
4308+
"@esbuild/linux-ppc64" "0.23.1"
4309+
"@esbuild/linux-riscv64" "0.23.1"
4310+
"@esbuild/linux-s390x" "0.23.1"
4311+
"@esbuild/linux-x64" "0.23.1"
4312+
"@esbuild/netbsd-x64" "0.23.1"
4313+
"@esbuild/openbsd-arm64" "0.23.1"
4314+
"@esbuild/openbsd-x64" "0.23.1"
4315+
"@esbuild/sunos-x64" "0.23.1"
4316+
"@esbuild/win32-arm64" "0.23.1"
4317+
"@esbuild/win32-ia32" "0.23.1"
4318+
"@esbuild/win32-x64" "0.23.1"
4319+
41704320
escalade@^3.1.1:
41714321
version "3.1.1"
41724322
resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz"
@@ -4638,7 +4788,7 @@ fs.realpath@^1.0.0:
46384788
resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
46394789
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
46404790

4641-
fsevents@^2.3.2:
4791+
fsevents@^2.3.2, fsevents@~2.3.3:
46424792
version "2.3.3"
46434793
resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz"
46444794
integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
@@ -4725,6 +4875,13 @@ get-symbol-description@^1.0.0:
47254875
call-bind "^1.0.2"
47264876
get-intrinsic "^1.1.1"
47274877

4878+
get-tsconfig@^4.7.5:
4879+
version "4.8.1"
4880+
resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.8.1.tgz#8995eb391ae6e1638d251118c7b56de7eb425471"
4881+
integrity sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==
4882+
dependencies:
4883+
resolve-pkg-maps "^1.0.0"
4884+
47284885
get-value@^2.0.3, get-value@^2.0.6:
47294886
version "2.0.6"
47304887
resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz"
@@ -7251,6 +7408,11 @@ resolve-from@^5.0.0:
72517408
resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz"
72527409
integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==
72537410

7411+
resolve-pkg-maps@^1.0.0:
7412+
version "1.0.0"
7413+
resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f"
7414+
integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==
7415+
72547416
resolve-url@^0.2.1:
72557417
version "0.2.1"
72567418
resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz"
@@ -8048,6 +8210,16 @@ tsutils@^3.21.0:
80488210
dependencies:
80498211
tslib "^1.8.1"
80508212

8213+
tsx@^4.19.1:
8214+
version "4.19.1"
8215+
resolved "https://registry.yarnpkg.com/tsx/-/tsx-4.19.1.tgz#b7bffdf4b565813e4dea14b90872af279cd0090b"
8216+
integrity sha512-0flMz1lh74BR4wOvBjuh9olbnwqCPc35OOlfyzHba0Dc+QNUeWX/Gq2YTbnwcWPO3BMd8fkzRVrHcsR+a7z7rA==
8217+
dependencies:
8218+
esbuild "~0.23.0"
8219+
get-tsconfig "^4.7.5"
8220+
optionalDependencies:
8221+
fsevents "~2.3.3"
8222+
80518223
tty-table@^4.1.5:
80528224
version "4.2.3"
80538225
resolved "https://registry.npmjs.org/tty-table/-/tty-table-4.2.3.tgz"

0 commit comments

Comments
 (0)