{"version":3,"sources":["jsdelivr-header.js","/npm/xor-crypto-js@1.6.10/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,cAEA,WACI,IAAI,EAAM,QAAQ,IACd,EAmBL,WAEC,IAAI,EAAM,CACN,QAAS,EACT,QAAS,EACT,QAAS,EACT,QAAS,GAKb,SAAS,EAAQ,EAAY,GACzB,IAAK,IAAe,EAChB,MAAO,MAEX,IAAI,EAAI,EAAQ,GACZ,EAAI,EAAQ,GACZ,EAAO,EAAE,OACT,EAAO,EAAE,OAAS,EACtB,GAAY,GAAR,EAAW,CACX,EAAO,EAAO,EACd,IAAK,IAAI,EAAQ,EAAG,EAAQ,EAAM,IAC9B,GAAQ,GAEhB,CAKA,OAJW,EAAa,EAAG,GACT,KAAI,SAAS,GAC3B,OAAO,EAAW,EAAM,EAC5B,IACc,KAAK,GACvB,CAGA,SAAS,EAAQ,EAAa,GAC1B,IAAK,IAAgB,EACjB,MAAO,MAEX,IAAI,EAAK,EAAQ,GACb,EAAK,EACL,EAAO,EAAG,OAEd,GAAY,GADD,EAAG,OAAS,EAEnB,MAAO,MAEX,IAII,EAJS,EAAa,EAAI,GACV,KAAI,SAAS,GAC7B,OAAO,EAAW,EAAM,EAC5B,IACiB,KAAK,IAEtB,OADA,EAAM,EAAQ,EAElB,CAEA,SAAS,EAAQ,GAEb,IADA,IAAI,EAAM,GACD,EAAI,EAAG,EAAI,EAAI,OAAQ,IAC5B,EAAM,EAAO,IAAM,EAAI,WAAW,GAAG,SAAS,IAElD,OAAO,CACX,CAEA,SAAS,EAAQ,GAGb,IAFA,IAAI,EAAS,EAAI,MAAM,KACnB,EAAM,GACD,EAAI,EAAG,EAAI,EAAO,OAAQ,IAC3B,EAAO,IAAM,SAAS,EAAO,GAAI,MACjC,GAAa,OAAO,aAAa,SAAS,EAAO,GAAI,MAG7D,OAAO,CACX,CAEA,SAAS,EAAQ,EAAY,GACzB,IAAK,IAAe,EAChB,MAAO,MAQX,IANA,IAAI,EAAI,EAAQ,GACZ,EAAI,EAAQ,GACZ,EAAO,EAAE,OACT,EAAO,EAAE,OACT,EAAK,EACL,EAAM,GACD,EAAI,EAAG,EAAI,EAAM,IAAK,CAEvB,EADA,EAAI,EACC,EAEA,EAAI,EAIb,IAFQ,SAAS,EAAE,OAAO,GAAI,IACtB,SAAS,EAAE,OAAO,GAAK,KACX,SAAS,GACjC,CACA,OAAO,CACX,CAEA,SAAS,EAAQ,EAAa,GAC1B,IAAK,IAAgB,EACjB,MAAO,MAQX,IANA,IAAI,EAAK,EAAQ,GACb,EAAK,EACL,EAAQ,EAAG,OACX,EAAQ,EAAG,OACX,EAAK,EACL,EAAM,GACD,EAAI,EAAG,EAAI,EAAO,IAAK,CAExB,EADA,EAAI,EACC,EAEA,EAAI,EAIb,IAFQ,SAAS,EAAG,OAAO,GAAI,IACvB,SAAS,EAAG,OAAO,GAAK,KACZ,SAAS,GACjC,CACA,OAAO,EAAQ,EACnB,CAEA,SAAS,EAAa,EAAG,GACrB,IAAI,EAAO,EAAE,OACb,GAAI,EAAO,EACP,MAAO,MAIX,IAFA,IAAI,EAAU,GACV,EAAW,GACN,EAAI,EAAG,EAAI,EAAM,KACtB,GAAsB,EAAE,OAAO,IAClB,QAAU,IACnB,EAAQ,KAAK,GACb,EAAW,IAMnB,OAHI,GACA,EAAQ,KAAK,GAEV,CACX,CAEA,SAAS,EAAW,EAAG,GAGnB,IAFA,IAAI,EAAO,EAAE,OACT,EAAM,GACD,EAAI,EAAG,EAAI,EAAM,IAAK,CAG3B,IAFQ,SAAS,EAAE,OAAO,GAAI,IACtB,SAAS,EAAE,OAAO,GAAI,KACV,SAAS,GACjC,CACA,OAAO,CACX,CACA,OAAO,CACX,CAxKc,GACN,EAAQ,CAAC,EAEb,IACQ,SACA,EAAQ,OACR,OAAO,QAAU,EAEzB,CAAE,MAAO,GACL,EAAI,aAAc,EACtB,CACA,IAC0B,oBAAX,SACP,EAAQ,OAEhB,CAAE,MAAO,GACL,EAAI,aAAc,EACtB,CACA,EAAM,IAAM,CACf,CArBD","file":"/npm/xor-crypto-js@1.6.10/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/xor-crypto-js@1.6.10/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict';\r\n\r\n(function(f) {\r\n    var log = console.log;\r\n    var def = f();\r\n    var gbenv = {};\r\n\r\n    try {\r\n        if (global) {\r\n            gbenv = global;\r\n            module.exports = def;\r\n        }\r\n    } catch (e) {\r\n        log('global err', e);\r\n    }\r\n    try {\r\n        if (typeof window !== 'undefined') {\r\n            gbenv = window;\r\n        }\r\n    } catch (e) {\r\n        log('window err', e);\r\n    }\r\n    gbenv.xor = def;\r\n})(function() {\r\n\r\n    var def = {\r\n        enc_xor: enc_xor, //加密方法 传入两个必填参数 1:原文字符串  2.密钥字符串  返回：密文\r\n        encrypt: encrypt, //加密方法 传入两个必填参数 1:原文字符串  2.密钥字符串  返回：密文\r\n        dec_xor: dec_xor, // 解密方法 传入两个必填参数 1.密文 2.密钥字符串   返回：原文\r\n        decrypt: decrypt // 解密方法 传入两个必填参数 1.密文 2.密钥字符串   返回：原文\r\n    };\r\n\r\n    //任意utf8字符串  和任意utf8密钥 的异或加解密\r\n    //返回ciphertext(密文)\r\n    function enc_xor(plain_text, cipher_key) {\r\n        if (!plain_text || !cipher_key) {\r\n            return 'nil';\r\n        }\r\n        var c = str2hex(cipher_key);\r\n        var p = str2hex(plain_text);\r\n        var clen = c.length;\r\n        var miss = p.length % clen;\r\n        if (miss != 0) {\r\n            miss = clen - miss;\r\n            for (var missi = 0; missi < miss; missi++) {\r\n                p = p + 'k';\r\n            }\r\n        }\r\n        var parr = split_pretty(p, clen);\r\n        var resarr = parr.map(function(item) {\r\n            return xor_by_bit(item, c)\r\n        });\r\n        return resarr.join('');\r\n    }\r\n\r\n    // 如果密码错误 返回 'nil'\r\n    function dec_xor(cipher_text, cipher_key) {\r\n        if (!cipher_text || !cipher_key) {\r\n            return 'nil';\r\n        }\r\n        var ck = str2hex(cipher_key);\r\n        var ct = cipher_text;\r\n        var clen = ck.length;\r\n        var miss = ct.length % clen;\r\n        if (miss != 0) {\r\n            return 'nil'\r\n        }\r\n        var ct_arr = split_pretty(ct, clen);\r\n        var resarr = ct_arr.map(function(item) {\r\n            return xor_by_bit(item, ck)\r\n        });\r\n        var res = resarr.join('');\r\n        res = hex2str(res);\r\n        return res;\r\n    }\r\n\r\n    function str2hex(str) {\r\n        var res = '';\r\n        for (var i = 0; i < str.length; i++) {\r\n            res = res + ('k' + str.charCodeAt(i).toString(16));\r\n        }\r\n        return res;\r\n    }\r\n\r\n    function hex2str(str) {\r\n        var strarr = str.split(\"k\")\r\n        var res = '';\r\n        for (var i = 0; i < strarr.length; i++) {\r\n            if (strarr[i] && parseInt(strarr[i], 16)) {\r\n                res = res + (String.fromCharCode(parseInt(strarr[i], 16)))\r\n            }\r\n        }\r\n        return res;\r\n    }\r\n\r\n    function encrypt(plain_text, cipher_key) {\r\n        if (!plain_text || !cipher_key) {\r\n            return 'nil';\r\n        }\r\n        var c = str2hex(cipher_key);\r\n        var p = str2hex(plain_text);\r\n        var clen = c.length;\r\n        var plen = p.length;\r\n        var ci = 0;\r\n        var res = '';\r\n        for (var i = 0; i < plen; i++) {\r\n            if (i < clen) {\r\n                ci = i\r\n            } else {\r\n                ci = i % clen\r\n            }\r\n            var m = parseInt(p.charAt(i), 36);\r\n            var k = parseInt(c.charAt(ci), 36);\r\n            res = res + (m ^ k).toString(36);\r\n        }\r\n        return res;\r\n    }\r\n\r\n    function decrypt(cipher_text, cipher_key) {\r\n        if (!cipher_text || !cipher_key) {\r\n            return 'nil';\r\n        }\r\n        var ck = str2hex(cipher_key);\r\n        var ct = cipher_text;\r\n        var cklen = ck.length;\r\n        var ctlen = ct.length;\r\n        var ki = 0;\r\n        var res = '';\r\n        for (var i = 0; i < ctlen; i++) {\r\n            if (i < cklen) {\r\n                ki = i\r\n            } else {\r\n                ki = i % cklen\r\n            }\r\n            var m = parseInt(ct.charAt(i), 36);\r\n            var k = parseInt(ck.charAt(ki), 36);\r\n            res = res + (m ^ k).toString(36);\r\n        }\r\n        return hex2str(res);\r\n    }\r\n\r\n    function split_pretty(s, d) {\r\n        var slen = s.length;\r\n        if (slen < d) {\r\n            return 'nil';\r\n        }\r\n        var res_arr = [];\r\n        var arr_item = '';\r\n        for (var i = 0; i < slen; i++) {\r\n            arr_item = arr_item + s.charAt(i);\r\n            if (arr_item.length == d) {\r\n                res_arr.push(arr_item);\r\n                arr_item = '';\r\n            }\r\n        }\r\n        if (arr_item) {\r\n            res_arr.push(arr_item)\r\n        }\r\n        return res_arr;\r\n    }\r\n\r\n    function xor_by_bit(a, b) {\r\n        var bits = b.length;\r\n        var res = '';\r\n        for (var i = 0; i < bits; i++) {\r\n            var m = parseInt(a.charAt(i), 36);\r\n            var k = parseInt(b.charAt(i), 36);\r\n            res = res + (m ^ k).toString(36);\r\n        }\r\n        return res;\r\n    }\r\n    return def;\r\n});"]}