UNPKG

ember-source

Version:

A JavaScript framework for creating ambitious web applications

97 lines (75 loc) 2.2 kB
/* eslint-disable no-var */ /* globals global globalThis self */ /* eslint-disable-next-line no-unused-vars */ var define, require; (function () { var globalObj = typeof globalThis !== 'undefined' ? globalThis : typeof self !== 'undefined' ? self : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : null; if (globalObj === null) { throw new Error('unable to locate global object'); } if (typeof globalObj.define === 'function' && typeof globalObj.require === 'function') { define = globalObj.define; require = globalObj.require; return; } var registry = Object.create(null); var seen = Object.create(null); function missingModule(name, referrerName) { if (referrerName) { throw new Error('Could not find module ' + name + ' required by: ' + referrerName); } else { throw new Error('Could not find module ' + name); } } function internalRequire(_name, referrerName) { var name = _name; var mod = registry[name]; if (!mod) { name = name + '/index'; mod = registry[name]; } var exports = seen[name]; if (exports !== undefined) { return exports; } exports = seen[name] = {}; if (!mod) { missingModule(_name, referrerName); } var deps = mod.deps; var callback = mod.callback; var reified = new Array(deps.length); for (var i = 0; i < deps.length; i++) { if (deps[i] === 'exports') { reified[i] = exports; } else if (deps[i] === 'require') { reified[i] = require; } else { reified[i] = require(deps[i], name); } } callback.apply(this, reified); return exports; } require = function (name) { return internalRequire(name, null); }; define = function (name, deps, callback) { registry[name] = { deps: deps, callback: callback }; }; // setup `require` module require['default'] = require; require.has = function registryHas(moduleName) { return Boolean(registry[moduleName]) || Boolean(registry[moduleName + '/index']); }; require._eak_seen = require.entries = registry; })();