-
Notifications
You must be signed in to change notification settings - Fork 63
Joycon don't recognize .mjs saofile #160
Description
Hey there, @egoist!
Recently, i made a PR for including support for .mjs files, but after some tests and bug tracking, i've noticed a unexpected behavior coming from joycon
According to the docs:
By default only .js and .json file are parsed, otherwise raw data will be returned, so you can add custom loader to parse them
So, that means .mjs files are excluded as valid configuration files, expect, if they are properly parsed and interpreted, and this can be done with the .addLoader() method, right after the warning above
joycon.addLoader({
test: /\.mjs$/,
load: async filepath => (await import(filepath)).default
})But this solution reaches to a dead end road, as the project is written with commonjs module system, consequently, being unable to import anything esm-ishy, simply migrating everything to esm seems cumbersome (i've tried, with no success), also, i thought on some other possible solutions like:
- Using
acornto parse the.mjssaofile - Relying on
fs.readFileSync()to accomplish this task
But both methods above seems really hacky and overcomplicated, do you have any insight on how to include .mjs files into the parsing process? (the same way that happens with .js files)