diff options
Diffstat (limited to 'build/tasks/lib/rollup-plugin-file-overrides.js')
-rw-r--r-- | build/tasks/lib/rollup-plugin-file-overrides.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/build/tasks/lib/rollup-plugin-file-overrides.js b/build/tasks/lib/rollup-plugin-file-overrides.js new file mode 100644 index 000000000..c494e4e5d --- /dev/null +++ b/build/tasks/lib/rollup-plugin-file-overrides.js @@ -0,0 +1,24 @@ +"use strict"; + +/** + * A Rollup plugin accepting a file overrides map and changing + * module sources to the overridden ones where provided. Files + * without overrides are loaded from disk. + * + * @param {Map<string, string>} fileOverrides + */ +module.exports = ( fileOverrides ) => { + return { + name: "jquery-file-overrides", + load( id ) { + if ( fileOverrides.has( id ) ) { + + // Replace the module by a fake source. + return fileOverrides.get( id ); + } + + // Handle this module via the file system. + return null; + } + }; +}; |