blob: 55ffcc47cee9e298acc61fcdefa4c2b9b952a434 [file] [log] [blame]
/*
* Curve 25519-based cryptography collection.
*
* EC Diffie-Hellman (ECDH) based on Curve25519 and digital signatures (EdDSA)
* based on Ed25519.
*
* Copyright (c) 2012 Ron Garret
* Copyright (c) 2007, 2013, 2014 Michele Bini
* Copyright (c) 2014 Mega Limited
* under the MIT License.
*
* You should have received a copy of the license along with this program.
*/
// See https://github.com/jrburke/almond#exporting-a-public-api
(function (root, factory) {
if (typeof define === 'function' && define.amd) {
// Allow using this built library as an AMD module
// in another project. That other project will only
// see this AMD call, not the internal modules in
// the closure below.
define([], factory);
} else if (typeof module === 'object' && module.exports) {
// Allow using this built library as a CommonJS module
module.exports = factory();
} else {
// Browser globals case. Just assign the
// result to a property on the global.
root.jodid25519 = factory();
}
}(this, function () {
if (typeof module === 'object' && module.exports) {
// If we're running under CommonJS, our dependencies get confused and
// each clobber module.exports which leads to bad behaviour because
// almond does asynchronous loading. So just pretend we're in the
// browser globals case, and make them write to those values instead.
// TODO: ditch requirejs/almond and use browserify or something.
var __oldModule = module;
var __oldExports = exports;
var window = global;
module = undefined;
exports = undefined;
}