You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
(function (w) { "use strict";
function findBest(atobNative) { // normal window
if ('function' === typeof atobNative) { return atobNative; }
// browserify (web worker)
if ('function' === typeof Buffer) { return function atobBrowserify(a) { //!! Deliberately using an API that's deprecated in node.js because
//!! this file is for browsers and we expect them to cope with it.
//!! Discussion: github.com/node-browser-compat/atob/pull/9
return new Buffer(a, 'base64').toString('binary'); }; }
// ios web worker with base64js
if ('object' === typeof w.base64js) { // bufferToBinaryString
// https://git.coolaj86.com/coolaj86/unibabel.js/blob/master/index.js#L50
return function atobWebWorker_iOS(a) { var buf = w.base64js.b64ToByteArray(a); return Array.prototype.map.call(buf, function (ch) { return String.fromCharCode(ch); }).join(''); }; }
return function () { // ios web worker without base64js
throw new Error("You're probably in an old browser or an iOS webworker." + " It might help to include beatgammit's base64-js."); }; }
var atobBest = findBest(w.atob); w.atob = atobBest;
if ((typeof module === 'object') && module && module.exports) { module.exports = atobBest; } }(window));
|