mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
8be4c0e4f8
Summary of the changes: * define the `exports` field in `package.json`; `jQuery` & `$` are also exported as named exports in ESM builds now * declare `"type": "module"` globally except for the `build` folder * add the `--esm` option to `grunt custom`, generating jQuery as an ECMAScript module into the `dist-module` folder * expand `node_smoke_tests` to test the slim & ESM builds and their various combinations; also, test both jQuery loaded via a path to the file as well as from module specifiers that should be parsed via the `exports` feature * add details about ESM usage to the release package README * run `compare_size` on all built minified files; don't run it anymore on unminified files where they don't provide lots of value * remove the remove_map_comment task; SWC doesn't insert the `//# sourceMappingURL=` pragma by default so there's nothing to strip Fixes gh-4592 Closes gh-5255
23 lines
750 B
JavaScript
23 lines
750 B
JavaScript
"use strict";
|
|
|
|
const path = require( "node:path" );
|
|
|
|
const ROOT_DIR = path.resolve( __dirname, "..", "..", "..", ".." );
|
|
|
|
// If `jQueryModuleSpecifier` is a real relative path, make it absolute
|
|
// to make sure it resolves to the same file inside utils from
|
|
// a subdirectory. Otherwise, leave it as-is as we may be testing `exports`
|
|
// so we need input as-is.
|
|
const getJQueryModuleSpecifier = () => {
|
|
const jQueryModuleInputSpecifier = process.argv[ 2 ];
|
|
if ( !jQueryModuleInputSpecifier ) {
|
|
throw new Error( "jQuery module specifier not passed" );
|
|
}
|
|
|
|
return jQueryModuleInputSpecifier.startsWith( "." ) ?
|
|
path.resolve( ROOT_DIR, jQueryModuleInputSpecifier ) :
|
|
jQueryModuleInputSpecifier;
|
|
};
|
|
|
|
module.exports = { getJQueryModuleSpecifier };
|