UNPKG

yhtml5-test

Version:

A test framework for front-end projects

76 lines (72 loc) 1.86 kB
/** * Node.js module for Forge message digests. * * @author Dave Longley * * Copyright 2011-2014 Digital Bazaar, Inc. */ (function() { /* ########## Begin module implementation ########## */ function initModule(forge) { forge.md = forge.md || {}; forge.md.algorithms = { md5: forge.md5, sha1: forge.sha1, sha256: forge.sha256 }; forge.md.md5 = forge.md5; forge.md.sha1 = forge.sha1; forge.md.sha256 = forge.sha256; } // end module implementation /* ########## Begin module wrapper ########## */ var name = 'md'; if(typeof define !== 'function') { // NodeJS -> AMD if(typeof module === 'object' && module.exports) { var nodeJS = true; define = function(ids, factory) { factory(require, module); }; } else { // <script> if(typeof forge === 'undefined') { forge = {}; } return initModule(forge); } } // AMD var deps; var defineFunc = function(require, module) { module.exports = function(forge) { var mods = deps.map(function(dep) { return require(dep); }).concat(initModule); // handle circular dependencies forge = forge || {}; forge.defined = forge.defined || {}; if(forge.defined[name]) { return forge[name]; } forge.defined[name] = true; for(var i = 0; i < mods.length; ++i) { mods[i](forge); } return forge[name]; }; }; var tmpDefine = define; define = function(ids, factory) { deps = (typeof ids === 'string') ? factory.slice(2) : ids.slice(2); if(nodeJS) { delete define; return tmpDefine.apply(null, Array.prototype.slice.call(arguments, 0)); } define = tmpDefine; return define.apply(null, Array.prototype.slice.call(arguments, 0)); }; define( ['require', 'module', './md5', './sha1', './sha256', './sha512'], function() { defineFunc.apply(null, Array.prototype.slice.call(arguments, 0)); }); })();