UNPKG

@terminus/ngx-tools

Version:

[![CircleCI][circle-badge]][circle-link] [![codecov][codecov-badge]][codecov-project] [![semantic-release][semantic-release-badge]][semantic-release] [![MIT License][license-image]][license-url] <br> [![NPM version][npm-version-image]][npm-url] [![Github

48 lines 4.32 kB
/* eslint-disable @typescript-eslint/no-magic-numbers */ import { atobPolyfill } from './atob'; var localAtob = window.atob || atobPolyfill; /** * Decode unicode value * * @param str * @returns The decoded value */ var b64DecodeUnicode = function (str) { return decodeURIComponent(localAtob(str).replace(/(.)/g, function (m, p) { var code = p.charCodeAt(0).toString(16).toUpperCase(); if (code.length < 2) { code = "0" + code; } return "%" + code; })); }; var ɵ0 = b64DecodeUnicode; // eslint-disable-next-line camelcase /** * Decode url encoded value * * @param str * @returns The decoded value */ // eslint-disable-next-line camelcase export function base64_url_decode(str) { var output = str.replace(/-/g, '+').replace(/_/g, '/'); switch (output.length % 4) { case 0: break; case 2: output += '=='; break; case 3: output += '='; break; default: throw new Error('Illegal base64url string!'); } try { return b64DecodeUnicode(output); } catch (err) { return localAtob(output); } } export { ɵ0 }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZTY0LXVybC1kZWNvZGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdGVybWludXMvbmd4LXRvb2xzL2p3dC8iLCJzb3VyY2VzIjpbImp3dC1kZWNvZGUvYmFzZTY0LXVybC1kZWNvZGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsd0RBQXdEO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFHdEMsSUFBTSxTQUFTLEdBQUcsTUFBTSxDQUFDLElBQUksSUFBSSxZQUFZLENBQUM7QUFFOUM7Ozs7O0dBS0c7QUFDSCxJQUFNLGdCQUFnQixHQUNwQixVQUFDLEdBQVcsSUFBYSxPQUFBLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLFVBQVMsQ0FBQyxFQUFFLENBQVM7SUFDOUYsSUFBSSxJQUFJLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEQsSUFBSSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNuQixJQUFJLEdBQUcsTUFBSSxJQUFNLENBQUM7S0FDbkI7SUFDRCxPQUFPLE1BQUksSUFBTSxDQUFDO0FBQ3BCLENBQUMsQ0FBQyxDQUFDLEVBTnNCLENBTXRCLENBQUM7O0FBR04scUNBQXFDO0FBQ3JDOzs7OztHQUtHO0FBQ0gscUNBQXFDO0FBQ3JDLE1BQU0sVUFBVSxpQkFBaUIsQ0FBQyxHQUFXO0lBQzNDLElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkQsUUFBUSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUN6QixLQUFLLENBQUM7WUFDSixNQUFNO1FBQ1IsS0FBSyxDQUFDO1lBQ0osTUFBTSxJQUFJLElBQUksQ0FBQztZQUNmLE1BQU07UUFDUixLQUFLLENBQUM7WUFDSixNQUFNLElBQUksR0FBRyxDQUFDO1lBQ2QsTUFBTTtRQUNSO1lBQ0UsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0tBQ2hEO0lBRUQsSUFBSTtRQUNGLE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDakM7SUFBQyxPQUFPLEdBQUcsRUFBRTtRQUNaLE9BQU8sU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQzFCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1tYWdpYy1udW1iZXJzICovXG5pbXBvcnQgeyBhdG9iUG9seWZpbGwgfSBmcm9tICcuL2F0b2InO1xuXG5cbmNvbnN0IGxvY2FsQXRvYiA9IHdpbmRvdy5hdG9iIHx8IGF0b2JQb2x5ZmlsbDtcblxuLyoqXG4gKiBEZWNvZGUgdW5pY29kZSB2YWx1ZVxuICpcbiAqIEBwYXJhbSBzdHJcbiAqIEByZXR1cm5zIFRoZSBkZWNvZGVkIHZhbHVlXG4gKi9cbmNvbnN0IGI2NERlY29kZVVuaWNvZGUgPVxuICAoc3RyOiBzdHJpbmcpOiBzdHJpbmcgPT4gZGVjb2RlVVJJQ29tcG9uZW50KGxvY2FsQXRvYihzdHIpLnJlcGxhY2UoLyguKS9nLCBmdW5jdGlvbihtLCBwOiBzdHJpbmcpIHtcbiAgICBsZXQgY29kZSA9IHAuY2hhckNvZGVBdCgwKS50b1N0cmluZygxNikudG9VcHBlckNhc2UoKTtcbiAgICBpZiAoY29kZS5sZW5ndGggPCAyKSB7XG4gICAgICBjb2RlID0gYDAke2NvZGV9YDtcbiAgICB9XG4gICAgcmV0dXJuIGAlJHtjb2RlfWA7XG4gIH0pKTtcblxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2FtZWxjYXNlXG4vKipcbiAqIERlY29kZSB1cmwgZW5jb2RlZCB2YWx1ZVxuICpcbiAqIEBwYXJhbSBzdHJcbiAqIEByZXR1cm5zIFRoZSBkZWNvZGVkIHZhbHVlXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjYW1lbGNhc2VcbmV4cG9ydCBmdW5jdGlvbiBiYXNlNjRfdXJsX2RlY29kZShzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gIGxldCBvdXRwdXQgPSBzdHIucmVwbGFjZSgvLS9nLCAnKycpLnJlcGxhY2UoL18vZywgJy8nKTtcbiAgc3dpdGNoIChvdXRwdXQubGVuZ3RoICUgNCkge1xuICAgIGNhc2UgMDpcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgMjpcbiAgICAgIG91dHB1dCArPSAnPT0nO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAzOlxuICAgICAgb3V0cHV0ICs9ICc9JztcbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0lsbGVnYWwgYmFzZTY0dXJsIHN0cmluZyEnKTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgcmV0dXJuIGI2NERlY29kZVVuaWNvZGUob3V0cHV0KTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIGxvY2FsQXRvYihvdXRwdXQpO1xuICB9XG59XG4iXX0=