1 | const extensions = {
|
2 | '.babel.js': {
|
3 | module: 'babel/register',
|
4 | register: function (module) {
|
5 | module({
|
6 |
|
7 |
|
8 | extensions: '.js'
|
9 | })
|
10 | }
|
11 | },
|
12 | '.cirru': 'cirru-script/lib/register',
|
13 | '.cjsx': 'node-cjsx/register',
|
14 | '.co': 'coco',
|
15 | '.coffee': ['coffee-script/register', 'coffee-script'],
|
16 | '.coffee.md': ['coffee-script/register', 'coffee-script'],
|
17 | '.csv': 'require-csv',
|
18 | '.iced': ['iced-coffee-script/register', 'iced-coffee-script'],
|
19 | '.iced.md': ['iced-coffee-script/register', 'iced-coffee-script'],
|
20 | '.ini': 'require-ini',
|
21 | '.js': null,
|
22 | '.json': null,
|
23 | '.json5': 'json5/lib/require',
|
24 | '.jsx': [
|
25 | {
|
26 | module: 'babel/register',
|
27 | register: function (module) {
|
28 | module({
|
29 | extensions: '.jsx'
|
30 | });
|
31 | },
|
32 | },
|
33 | {
|
34 | module: 'node-jsx',
|
35 | register: function (module) {
|
36 | module.install({
|
37 | extension: '.jsx',
|
38 | harmony: true
|
39 | });
|
40 | }
|
41 | }
|
42 | ],
|
43 | '.litcoffee': ['coffee-script/register', 'coffee-script'],
|
44 | '.liticed': ['iced-coffee-script/register', 'iced-coffee-script'],
|
45 | '.ls': ['livescript', 'LiveScript'],
|
46 | '.node': null,
|
47 | '.toml': 'toml-require',
|
48 | '.ts': ['typescript-register', 'typescript-require'],
|
49 | '.wisp': 'wisp/engine/node',
|
50 | '.xml': 'require-xml',
|
51 | '.yaml': 'require-yaml',
|
52 | '.yml': 'require-yaml'
|
53 | };
|
54 |
|
55 | const jsVariantExtensions = [
|
56 | '.js',
|
57 | '.babel.js',
|
58 | '.cirru',
|
59 | '.cjsx',
|
60 | '.co',
|
61 | '.coffee',
|
62 | '.coffee.md',
|
63 | '.iced',
|
64 | '.iced.md',
|
65 | '.jsx',
|
66 | '.litcoffee',
|
67 | '.liticed',
|
68 | '.ls',
|
69 | '.ts',
|
70 | '.wisp'
|
71 | ];
|
72 |
|
73 | module.exports = {
|
74 | extensions: extensions,
|
75 | jsVariants: jsVariantExtensions.reduce(function (result, ext) {
|
76 | result[ext] = extensions[ext];
|
77 | return result;
|
78 | }, {})
|
79 | };
|