Skip to content

Commit 6bf5902

Browse files
author
AyushGupta05
committed
Add tsx loader support
1 parent c09bf70 commit 6bf5902

8 files changed

Lines changed: 58 additions & 0 deletions

File tree

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,12 +127,14 @@ A sample of an entry containing multiple hooks would look like:
127127
- '@babel/register'
128128
- esbuild-register/dist/node
129129
- '@swc/register'
130+
- tsx/dist/cjs/index.cjs
130131
.tsx:
131132
- ts-node/register
132133
- sucrase/register/tsx
133134
- '@babel/register'
134135
- esbuild-register/dist/node
135136
- '@swc/register'
137+
- tsx/dist/cjs/index.cjs
136138
.yaml:
137139
- yaml-hook/register
138140
.yml:
@@ -203,12 +205,14 @@ The `jsVariants` is the same mapping as above, but only include the extensions w
203205
- '@babel/register'
204206
- esbuild-register/dist/node
205207
- '@swc/register'
208+
- tsx/dist/cjs/index.cjs
206209
.tsx:
207210
- ts-node/register
208211
- sucrase/register/tsx
209212
- '@babel/register'
210213
- esbuild-register/dist/node
211214
- '@swc/register'
215+
- tsx/dist/cjs/index.cjs
212216
```
213217

214218
## License

index.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,7 @@ var extensions = {
424424
);
425425
},
426426
},
427+
'tsx/dist/cjs/index.cjs',
427428
],
428429
'.cts': ['ts-node/register'],
429430
'.tsx': [
@@ -498,6 +499,7 @@ var extensions = {
498499
);
499500
},
500501
},
502+
'tsx/dist/cjs/index.cjs',
501503
],
502504
'.yaml': 'yaml-hook/register',
503505
'.yml': 'yaml-hook/register',

test/fixtures/ts/5/package.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"dependencies": {
3+
"tsx": "^4.21.0"
4+
}
5+
}

test/fixtures/ts/5/test.ts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
var test = {
2+
data: {
3+
trueKey: true,
4+
falseKey: false,
5+
subKey: {
6+
subProp: 1,
7+
},
8+
},
9+
};
10+
11+
var main = {
12+
default: test,
13+
};
14+
15+
export = main;

test/fixtures/tsx/5/data.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
export const data: {
2+
trueKey: boolean;
3+
falseKey: boolean;
4+
subKey: {
5+
subProp: number;
6+
};
7+
} = {
8+
trueKey: true,
9+
falseKey: false,
10+
subKey: {
11+
subProp: 1,
12+
},
13+
};

test/fixtures/tsx/5/package.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"dependencies": {
3+
"tsx": "^4.21.0"
4+
}
5+
}

test/fixtures/tsx/5/test.tsx

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
/** @jsx jsx */
2+
3+
import { data } from './data';
4+
5+
function Component(props: object) {
6+
return { data: props };
7+
}
8+
9+
function jsx(element: typeof Component, props: object) {
10+
return element(props);
11+
}
12+
13+
export default <Component {...data} />;

test/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ function cleanup() {
5151
// These modules need newer node features
5252
var minVersions = {
5353
'@mdx-js/register': { major: 12 },
54+
tsx: { major: 18 },
5455
};
5556

5657
var maxVersions = {};

0 commit comments

Comments
 (0)