UNPKG

@meteorjs/reify

Version:

Enable ECMAScript 2015 modules in Node today. No caveats. Full stop.

44 lines (36 loc) 1.22 kB
"use strict"; const hasOwn = Object.prototype.hasOwnProperty; const defaultParser = require("./parsers/default.js"); const TLA_ENABLED = typeof process === "object" && process !== null && typeof process.env === "object" && process.env !== null && process.env.REIFY_TLA === 'true'; const defaultOptions = { ast: false, // If not false, "use strict" will be added to any modules with at least // one import or export declaration. enforceStrictMode: true, generateLetDeclarations: false, avoidModernSyntax: false, sourceType: "unambiguous", moduleAlias: "module", dynamicImport: false, topLevelAwait: TLA_ENABLED, // Controls whether finalizeHoisting performs one-time-only transforms like // wrapping the module body in a function. finalCompilationPass: true, forceWrapForTopLevelAwait: false, forceHasTopLevelAwait: false, parse(code) { return defaultParser.parse(code); } }; function get(options, name) { const result = hasOwn.call(options, name) ? options[name] : void 0; return result === void 0 ? defaultOptions[name] : result; } exports.get = get; function setDefaults(options) { Object.assign(defaultOptions, options); } exports.setDefaults = setDefaults;