UNPKG

1.91 kBJavaScriptView Raw
1const extensions = {
2 '.babel.js': {
3 module: 'babel/register',
4 register: function (module) {
5 module({
6 // register on .js extension due to https://github.com/joyent/node/blob/v0.12.0/lib/module.js#L353
7 // which only captures the final extension (.babel.js -> .js)
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
55const 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
73module.exports = {
74 extensions: extensions,
75 jsVariants: jsVariantExtensions.reduce(function (result, ext) {
76 result[ext] = extensions[ext];
77 return result;
78 }, {})
79};