{"version":3,"sources":["jsdelivr-header.js","/npm/truewallet-qrcode-generator@1.0.1-message-limit-length/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,MAAM,YAAE,aAAgB,QAAQ,OAE1B,aAAgB,IAClB,IAAI,EAAQ,YAAY,GAAG,QAAY,OAAQ,SAAS,IAAI,SAAS,EAAG,KACxE,MAAO,KAAK,OAAO,EAAM,QAAQ,SAAS,EAAG,OAAO,IAAQ,aAAY,EAGtE,yBAA2B,8HAOjC,SAAS,SAAS,EAAc,GAAI,EAAS,EAAG,EAAU,IACtD,GAAG,OAAO,GAAS,OAAS,GAAI,MAAM,IAAI,MAAM,kDAChD,MAAM,EAAU,EAAO,QAAQ,GACzB,EAAW,IAAI,OAAO,IACtB,EAAc,OAAyB,EAAlB,EAAS,QAAY,SAAS,EAAG,KACtD,EAAa,EAAS,KAAI,GAAO,EAAI,WAAW,GAAG,SAAS,IAAI,SAAS,EAAG,OAAM,KAAK,IACvF,EAAW,yBAAyB,QAAQ,gBAAiB,GAAa,QAAQ,kBAAmB,OAAO,EAAQ,QAAQ,SAAS,EAAG,MAAM,QAAQ,WAAY,GAAS,QAAQ,gBAAiB,GAAY,QAAQ,eAAgB,GAC9O,OAAO,EAAS,cAAgB,aAAa,EACjD,CAEA,OAAO,QAAU","file":"/npm/truewallet-qrcode-generator@1.0.1-message-limit-length/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/truewallet-qrcode-generator@1.0.1-message-limit-length/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","const { crc16xmodem } = require('crc');\n\nconst generate_crc = (data) => {\n    let value = crc16xmodem(`${data}6304`, 0xFFFF).toString(16).padStart(4, '0')\n    return `63${String(value.length).padStart(2, '0')}${value}`.toUpperCase()\n}\n\nconst __TRUEWALLET_QR_TEMPLATE = \"00020101021229390016A000000677010111031514000{phonenumber}5802TH54{amount_length}{amount}530376481{hex_length}{hex_message}\"\n\n/**\n* @param {string} [phoneNumber]\n* @param {number} [amount]\n* @param {string} [message]\n*/\nfunction generate(phoneNumber = \"\", amount = 0, message = \"\") {\n    if(String(message).length > 24) throw new Error(\"จำนวนตัวอักษรของข้อความห้ามมากกว่า 24 ตัวอักษร\")\n    const _amount = amount.toFixed(2)\n    const hexLists = [...String(message)]\n    const hexLengthX4 = String(hexLists.length * 4).padStart(2, '0')\n    const hexMessage = hexLists.map(str => str.charCodeAt(0).toString(16).padStart(4, '0')).join(\"\")\n    const _payload = __TRUEWALLET_QR_TEMPLATE.replace(\"{phonenumber}\", phoneNumber).replace(\"{amount_length}\", String(_amount.length).padStart(2, '0')).replace(\"{amount}\", _amount).replace(\"{hex_message}\", hexMessage).replace(\"{hex_length}\", hexLengthX4)\n    return _payload.toUpperCase() + generate_crc(_payload)\n}\n\nmodule.exports = generate"]}