From 6c93bc12583c04d896f0f33952eeee8382c34997 Mon Sep 17 00:00:00 2001 From: Jameson Little Date: Thu, 9 Jun 2011 09:36:33 -0600 Subject: [PATCH] Added dependency to repository --- dep/require-kiss.js | 65 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 dep/require-kiss.js diff --git a/dep/require-kiss.js b/dep/require-kiss.js new file mode 100644 index 0000000..8843ad9 --- /dev/null +++ b/dep/require-kiss.js @@ -0,0 +1,65 @@ +/*jslint onevar: true, undef: true, newcap: true, regexp: true, plusplus: true, bitwise: true, devel: true, maxerr: 50, indent: 2 */ +/*global module: true, exports: true, provide: true */ +var global = global || (function () { return this; }()), + __dirname = __dirname || ''; +(function () { + "use strict"; + + var thrownAlready = false; + + function ssjsProvide(exports) { + //module.exports = exports || module.exports; + } + + function resetModule() { + global.module = {}; + global.exports = {}; + global.module.exports = exports; + } + + function normalize(name) { + if ('./' === name.substr(0,2)) { + name = name.substr(2); + } + return name; + } + + function browserRequire(name) { + var mod, + msg = "One of the included scripts requires '" + + name + "', which is not loaded. " + + "\nTry including ''.\n"; + + name = normalize(name); + mod = global.__REQUIRE_KISS_EXPORTS[name] || global[name]; + + if ('undefined' === typeof mod && !thrownAlready) { + thrownAlready = true; + alert(msg); + throw new Error(msg); + } + + return mod; + } + + function browserProvide(name, new_exports) { + name = normalize(name); + global.__REQUIRE_KISS_EXPORTS[name] = new_exports || module.exports; + resetModule(); + } + + if (global.require) { + if (global.provide) { + return; + } + global.provide = ssjsProvide; + return; + } + + global.__REQUIRE_KISS_EXPORTS = global.__REQUIRE_KISS_EXPORTS || {}; + global.require = global.require || browserRequire; + global.provide = global.provide || browserProvide; + resetModule(); + + provide('require-kiss'); +}());