UNPKG

3.45 kBSource Map (JSON)View Raw
1{"version":3,"file":"atob.browser.js","sourceRoot":"","sources":["../../../src/utils/atob.browser.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,IAAI,QAAa,CAAC;AAElB,mDAAmD;AACnD,MAAM,GAAG,GAAG,mEAAmE,CAAC;AAChF,2EAA2E;AAC3E,MAAM,KAAK,GAAG,sEAAsE,CAAC;AAErF,IAAI,UAAU,KAAK,OAAO,IAAI,EAAE;IAC9B,uCAAuC;IACvC,QAAQ,GAAG,CAAC,GAAW,EAAU,EAAE;QACjC,6EAA6E;QAC7E,0DAA0D;QAC1D,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACpB,MAAM,IAAI,SAAS,CACjB,0FAA0F,CAC3F,CAAC;SACH;QAED,gDAAgD;QAChD,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,MAAM,CAAC;QACX,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,EAAE,CAAC;QACP,IAAI,EAAE,CAAC;QACP,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,GAAI;YACvB,MAAM;gBACJ,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;oBACpC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;oBACpC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAC1C,CAAC,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAEtC,MAAM;gBACJ,EAAE,KAAK,EAAE;oBACP,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,GAAG,CAAC;oBAC3C,CAAC,CAAC,EAAE,KAAK,EAAE;wBACX,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;wBAChE,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,CAAC;SACpF;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;CACH;KAAM;IACL,QAAQ,GAAG,IAAI,CAAC;CACjB;AAED,eAAe,QAAQ,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nlet safeatob: any;\n\n// base64 character set, plus padding character (=)\nconst b64 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n// Regular expression to check formal correctness of base64 encoded strings\nconst b64re = /^(?:[A-Za-z\\d+/]{4})*?(?:[A-Za-z\\d+/]{2}(?:==)?|[A-Za-z\\d+/]{3}=?)?$/;\n\nif (\"function\" !== typeof atob) {\n // atob implementation for React Native\n safeatob = (str: string): string => {\n // atob can work with strings with whitespaces, even inside the encoded part,\n // but only \\t, \\n, \\f, \\r and ' ', which can be stripped.\n str = String(str).replace(/[\\t\\n\\f\\r ]+/g, \"\");\n if (!b64re.test(str)) {\n throw new TypeError(\n \"Failed to execute 'atob' on 'Window': The string to be decoded is not correctly encoded.\"\n );\n }\n\n // Adding the padding if missing, for simplicity\n str += \"==\".slice(2 - (str.length & 3));\n let bitmap;\n let result = \"\";\n let r1;\n let r2;\n let i = 0;\n for (; i < str.length; ) {\n bitmap =\n (b64.indexOf(str.charAt(i++)) << 18) |\n (b64.indexOf(str.charAt(i++)) << 12) |\n ((r1 = b64.indexOf(str.charAt(i++))) << 6) |\n (r2 = b64.indexOf(str.charAt(i++)));\n\n result +=\n r1 === 64\n ? String.fromCharCode((bitmap >> 16) & 255)\n : r2 === 64\n ? String.fromCharCode((bitmap >> 16) & 255, (bitmap >> 8) & 255)\n : String.fromCharCode((bitmap >> 16) & 255, (bitmap >> 8) & 255, bitmap & 255);\n }\n return result;\n };\n} else {\n safeatob = atob;\n}\n\nexport default safeatob;\n"]}
\No newline at end of file