Files
jquery/src/wrapper-esm.js
Michał Gołębiowski-Owczarek 8be4c0e4f8 Build: Add exports to package.json, export slim & esm builds
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
2023-07-10 19:14:08 +02:00

42 lines
1.1 KiB
JavaScript

/*!
* jQuery JavaScript Library v@VERSION
* https://jquery.com/
*
* Copyright OpenJS Foundation and other contributors
* Released under the MIT license
* https://jquery.org/license
*
* Date: @DATE
*/
// For ECMAScript module environments where a proper `window`
// is present, execute the factory and get jQuery.
// For environments that do not have a `window` with a `document`
// (such as Node.js), expose a factory as module.exports.
// This accentuates the need for the creation of a real `window`.
// e.g. var jQuery = require("jquery")(window);
// See ticket trac-14549 for more info.
var jQueryOrJQueryFactory = typeof window !== "undefined" && window.document ?
jQueryFactory( window, true ) :
function( w ) {
if ( !w.document ) {
throw new Error( "jQuery requires a window with a document" );
}
return jQueryFactory( w );
};
function jQueryFactory( window, noGlobal ) {
// @CODE
// build.js inserts compiled jQuery here
return jQuery;
}
export {
jQueryOrJQueryFactory as jQuery,
jQueryOrJQueryFactory as $
};
export default jQueryOrJQueryFactory;