{"version":3,"sources":["jsdelivr-header.js","/npm/node-airodump@1.0.1/app.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,MAAM,KAAO,QAAQ,iBACf,aAAe,QAAQ,UAE7B,MAAM,iBAAiB,aACrB,WAAA,CAAY,GACV,QACA,KAAK,WAAQ,EACb,KAAK,MAAQ,EACb,KAAK,QAAU,EACjB,CAEA,KAAA,GACE,KAAK,MAAQ,KAAK,MAAM,OAAQ,CAAC,gBAAiB,KAAK,QACvD,KAAK,MAAM,OAAO,GAAG,OAAQ,SAAU,GACrC,KAAK,YAAY,EAClB,EAAE,KAAK,OACR,KAAK,MAAM,OAAO,GAAG,QAAQ,SAAS,GACpC,KAAK,KAAK,QAAS,OAAO,GAC5B,GACF,CAEA,WAAA,CAAY,GAIV,IAAI,EAAU,GACd,IAFA,GADA,GADA,EAAO,OAAO,IACF,QAAQ,8EAA+E,KACvF,MAAM,OAEV,OAAO,EAAG,CAChB,IAAI,IAAI,EAAI,EAAG,EAAE,EAAK,OAAO,EAAE,IAC7B,EAAQ,KAAK,YAAY,EAAK,KAE7B,KAAK,UAAU,KAAK,UAAU,KAAK,UAAU,KAC9C,KAAK,QAAU,EACf,KAAK,KAAK,SAAU,KAAK,SAE7B,CACF,EAGF,SAAS,YAAY,GAcnB,MAba,CACX,GAAM,EAAK,UAAU,EAAG,IACxB,GAAM,EAAK,UAAU,GAAI,IACzB,MAAS,EAAK,UAAU,GAAI,IAAI,OAChC,MAAS,EAAK,UAAU,GAAI,IAAI,OAChC,QAAW,EAAK,UAAU,GAAI,IAAI,OAClC,QAAW,EAAK,UAAU,GAAI,IAAI,OAClC,GAAM,EAAK,UAAU,GAAI,IAAI,OAC7B,IAAO,EAAK,UAAU,GAAI,IAAI,OAC9B,OAAU,EAAK,UAAU,GAAI,IAAI,OACjC,KAAQ,EAAK,UAAU,GAAI,IAAI,OAC/B,OAAU,EAAK,UAAU,GAAI,EAAK,QAGtC,CAEA,OAAO,QAAU","file":"/npm/node-airodump@1.0.1/app.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/node-airodump@1.0.1/app.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 proc = require('child_process')\nconst EventEmitter = require('events')\n\nclass Airodump extends EventEmitter{\n  constructor(iface) {\n    super()\n    this.child = undefined\n    this.iface = iface\n    this.devices = []\n  }\n\n  start() {\n    this.child = proc.spawn('sudo', ['node-aircrack', this.iface])\n    this.child.stdout.on('data', (function(data) {\n      this.parseStdout(data)\n    }).bind(this))\n    this.child.stderr.on('data', function(data) {\n      this.emit('error', String(data))\n    })\n  }\n\n  parseStdout(data) {\n    data = String(data)\n    data = data.replace(/[\\u001b\\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, '')\n    data = data.split(\"\\n\")\n    let devices = []\n    if(data.length>7) {\n      for(var i = 3; i<data.length-6;i++) {\n        devices.push(parseDevice(data[i]))\n      }\n      if(JSON.stringify(this.devices)!=JSON.stringify(devices)) {\n        this.devices = devices\n        this.emit('update', this.devices)\n      }\n    }\n  }\n}\n\nfunction parseDevice(data) {\n  let parsed = {\n    \"st\": data.substring(2, 19),\n    \"ap\": data.substring(20, 37),\n    \"stpwr\": data.substring(38, 44).trim(),\n    \"appwr\": data.substring(45, 51).trim(),\n    \"packets\": data.substring(52, 57).trim(),\n    \"beacons\": data.substring(58, 65).trim(),\n    \"ch\": data.substring(66, 68).trim(),\n    \"enc\": data.substring(69, 73).trim(),\n    \"cipher\": data.substring(74, 80).trim(),\n    \"auth\": data.substring(81, 85).trim(),\n    \"apssid\": data.substring(86, data.length),\n  }\n  return parsed\n}\n\nmodule.exports = Airodump\n"]}