{"version":3,"file":"hex.mjs","sources":["../../../../../../../packages/utils/jsencrypt/jselib/asn1js/hex.js"],"sourcesContent":["// Hex JavaScript decoder\n// Copyright (c) 2008-2013 Lapo Luchini <lapo@lapo.it>\n// Permission to use, copy, modify, and/or distribute this software for any\n// purpose with or without fee is hereby granted, provided that the above\n// copyright notice and this permission notice appear in all copies.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\nvar decoder\nexport var Hex = {\n\tdecode: function (a) {\n\t\tvar i\n\t\tif (decoder === undefined) {\n\t\t\tvar hex = '0123456789ABCDEF'\n\t\t\tvar ignore = ' \\f\\n\\r\\t\\u00A0\\u2028\\u2029'\n\t\t\tdecoder = {}\n\t\t\tfor (i = 0; i < 16; ++i) {\n\t\t\t\tdecoder[hex.charAt(i)] = i\n\t\t\t}\n\t\t\thex = hex.toLowerCase()\n\t\t\tfor (i = 10; i < 16; ++i) {\n\t\t\t\tdecoder[hex.charAt(i)] = i\n\t\t\t}\n\t\t\tfor (i = 0; i < ignore.length; ++i) {\n\t\t\t\tdecoder[ignore.charAt(i)] = -1\n\t\t\t}\n\t\t}\n\t\tvar out = []\n\t\tvar bits = 0\n\t\tvar char_count = 0\n\t\tfor (i = 0; i < a.length; ++i) {\n\t\t\tvar c = a.charAt(i)\n\t\t\tif (c == '=') {\n\t\t\t\tbreak\n\t\t\t}\n\t\t\tc = decoder[c]\n\t\t\tif (c == -1) {\n\t\t\t\tcontinue\n\t\t\t}\n\t\t\tif (c === undefined) {\n\t\t\t\tthrow new Error('Illegal character at offset ' + i)\n\t\t\t}\n\t\t\tbits |= c\n\t\t\tif (++char_count >= 2) {\n\t\t\t\tout[out.length] = bits\n\t\t\t\tbits = 0\n\t\t\t\tchar_count = 0\n\t\t\t} else {\n\t\t\t\tbits <<= 4\n\t\t\t}\n\t\t}\n\t\tif (char_count) {\n\t\t\tthrow new Error('Hex encoding incomplete: 4 bits missing')\n\t\t}\n\t\treturn out\n\t},\n}\n"],"names":[],"mappings":"AAcA,IAAI,OAAA,CAAA;AACG,IAAI,GAAM,GAAA;AAAA,EAChB,MAAA,EAAQ,SAAU,CAAG,EAAA;AACpB,IAAI,IAAA,CAAA,CAAA;AACJ,IAAA,IAAI,YAAY,KAAW,CAAA,EAAA;AAC1B,MAAA,IAAI,GAAM,GAAA,kBAAA,CAAA;AACV,MAAA,IAAI,MAAS,GAAA,0BAAA,CAAA;AACb,MAAA,OAAA,GAAU,EAAC,CAAA;AACX,MAAA,KAAK,CAAI,GAAA,CAAA,EAAG,CAAI,GAAA,EAAA,EAAI,EAAE,CAAG,EAAA;AACxB,QAAA,OAAA,CAAQ,GAAI,CAAA,MAAA,CAAO,CAAC,CAAC,CAAI,GAAA,CAAA,CAAA;AAAA,OAC1B;AACA,MAAA,GAAA,GAAM,IAAI,WAAY,EAAA,CAAA;AACtB,MAAA,KAAK,CAAI,GAAA,EAAA,EAAI,CAAI,GAAA,EAAA,EAAI,EAAE,CAAG,EAAA;AACzB,QAAA,OAAA,CAAQ,GAAI,CAAA,MAAA,CAAO,CAAC,CAAC,CAAI,GAAA,CAAA,CAAA;AAAA,OAC1B;AACA,MAAA,KAAK,IAAI,CAAG,EAAA,CAAA,GAAI,MAAO,CAAA,MAAA,EAAQ,EAAE,CAAG,EAAA;AACnC,QAAA,OAAA,CAAQ,MAAO,CAAA,MAAA,CAAO,CAAC,CAAC,CAAI,GAAA,CAAA,CAAA,CAAA;AAAA,OAC7B;AAAA,KACD;AACA,IAAA,IAAI,MAAM,EAAC,CAAA;AACX,IAAA,IAAI,IAAO,GAAA,CAAA,CAAA;AACX,IAAA,IAAI,UAAa,GAAA,CAAA,CAAA;AACjB,IAAA,KAAK,IAAI,CAAG,EAAA,CAAA,GAAI,CAAE,CAAA,MAAA,EAAQ,EAAE,CAAG,EAAA;AAC9B,MAAI,IAAA,CAAA,GAAI,CAAE,CAAA,MAAA,CAAO,CAAC,CAAA,CAAA;AAClB,MAAA,IAAI,KAAK,GAAK,EAAA;AACb,QAAA,MAAA;AAAA,OACD;AACA,MAAA,CAAA,GAAI,QAAQ,CAAC,CAAA,CAAA;AACb,MAAA,IAAI,KAAK,CAAI,CAAA,EAAA;AACZ,QAAA,SAAA;AAAA,OACD;AACA,MAAA,IAAI,MAAM,KAAW,CAAA,EAAA;AACpB,QAAM,MAAA,IAAI,KAAM,CAAA,8BAAA,GAAiC,CAAC,CAAA,CAAA;AAAA,OACnD;AACA,MAAQ,IAAA,IAAA,CAAA,CAAA;AACR,MAAI,IAAA,EAAE,cAAc,CAAG,EAAA;AACtB,QAAI,GAAA,CAAA,GAAA,CAAI,MAAM,CAAI,GAAA,IAAA,CAAA;AAClB,QAAO,IAAA,GAAA,CAAA,CAAA;AACP,QAAa,UAAA,GAAA,CAAA,CAAA;AAAA,OACP,MAAA;AACN,QAAS,IAAA,KAAA,CAAA,CAAA;AAAA,OACV;AAAA,KACD;AACA,IAAA,IAAI,UAAY,EAAA;AACf,MAAM,MAAA,IAAI,MAAM,yCAAyC,CAAA,CAAA;AAAA,KAC1D;AACA,IAAO,OAAA,GAAA,CAAA;AAAA,GACR;AACD;;;;"}