{"version":3,"sources":["jsdelivr-header.js","/npm/node-qsikit@1.0.1/qsikit.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,MAAM,QAAU,QAAQ,WAClB,GAAK,QAAQ,MAGnB,IAAI,OAAS,CACZ,IAAK,gDAEF,aAAe,GACf,UAAY,CACf,eAAgB,SAAS,EAAO,GAC/B,QAAQ,KAAK,CAAC,IAAK,OAAO,IAAM,wBAAyB,KAAM,CAAC,SAAY,KAAS,CAAC,EAAO,EAAU,KACtG,GAAI,EAAO,MAAM,EACjB,EAAS,KAAK,MAAM,EAAS,MAAM,GAErC,EACA,YAAa,SAAS,EAAM,EAAQ,EAAO,EAAM,EAAM,EAAS,GAC/D,IAAI,EAAO,CAAC,EAEZ,GADA,EAAO,EAAK,QAAQ,eAAgB,KACxB,QAAQ,gBAAiB,IACrC,EAAW,KAAI,EACf,EAAe,SAAI,QACnB,EAAW,KAAI,EACf,KAAK,iBAAkB,UAAU,EAAM,SAAS,EAAK,kBAAkB,EAAQ,EAAM,cAAe,IACnG,EAAS,EAAO,GAGlB,EACA,mBAAoB,SAAS,EAAI,GAChC,IAAI,eAAe,EAAI,GAAI,MAAO,IACjC,EAAS,EAAO,GAElB,EACA,WAAY,SAAS,GACpB,IAAI,gBAAiB,GAAI,cAAe,IACvC,EAAS,EAAQ,GAEnB,EACA,SAAU,SAAS,EAAI,GACtB,IAAI,UAAU,EAAG,kBAAmB,GAAI,cAAe,IACtD,EAAS,EAAK,GAEhB,GAGG,QAAU,CACb,QAAS,CAAC,YAAa,SAAU,SAAU,OAAQ,QACnD,QAAS,CAAC,UACV,UAAW,CAAC,YAAa,gBAAiB,yBAG3C,SAAS,KAAK,EAAM,EAAO,GAAI,EAAK,KAAM,EAAc,GAE5C,MAAR,IAAc,EAAO,CAAC,GACzB,QAAQ,KAAK,CAAC,IAAK,OAAO,IAAI,EAAK,iBAAiB,EAAa,EAAQ,KAAM,IAAO,CAAC,EAAO,EAAU,KACvG,GAAI,EAAO,MAAM,EACjB,EAAS,KAAK,MAAM,EAAS,MAAM,GAErC,CAEA,SAAS,IAAI,EAAM,EAAO,GAAI,EAAc,GAC3C,IAAI,EAAQ,GACT,IAAc,EAAQ,iBAAiB,GAE1C,QAAQ,CAAC,IAAK,OAAO,IAAI,EAAK,EAAM,IAAS,CAAC,EAAO,EAAU,KAC9D,EAAS,KAAK,MAAM,GAAM,GAE5B,CAEA,SAAS,MAAM,EAAO,GACrB,IAAI,EAAK,GACL,EAAS,GACb,UAAU,eAAe,GAAQ,IAChC,EAAK,EAAQ,GACb,EAAS,EAAY,OACrB,EAAS,CAAC,GAAM,EAAI,OAAU,GAAQ,GAExC,CAuBA,IAAI,OAAS,WAAW,EAExB,OAAO,UAAU,QAAU,SAAS,EAAa,GAChD,MAAM,GAAc,IACnB,aAAe,EAAQ,GACvB,GAAU,GAEZ,EAEA,OAAO,UAAU,QAAU,UAE3B,OAAO,QAAU","file":"/npm/node-qsikit@1.0.1/qsikit.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/node-qsikit@1.0.1/qsikit.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 request = require('request');\r\nconst fs = require('fs');\r\n\r\n\r\nvar config = {\r\n\turl: 'https://quantumexperience.ng.bluemix.net/api'\r\n}\r\nvar access_token = \"\";\r\nvar endpoints = {\r\n\tloginWithToken: function(token, callback){\r\n\t\trequest.post({url: config.url + \"/users/loginWithToken\", form: {'apiToken': token}}, (error, response, body) => {\r\n\t\t\tif (error) throw error;\r\n\t\t\tcallback(JSON.parse(response.body));\r\n\t\t});\r\n\t},\r\n\texecuteCode: function(qasm, device, shots, name, seed, timeout, callback){\r\n\t\tvar data = {}\r\n\t\tqasm = qasm.replace('IBMQASM 2.0;', '')\r\n\t\tqasm = qasm.replace('OPENQASM 2.0;', '')\r\n\t\tdata['qasm'] = qasm;\r\n\t\tdata['codeType'] = 'QASM2';\r\n\t\tdata['name'] = name;\r\n\t\tpost('/codes/execute', '&shots='+shots+\"&seed=\"+seed+\"&deviceRunType=\"+device, data, access_token, (result) => {\r\n\t\t\tcallback(result);\r\n\t\t});\r\n\t\t\r\n\t},\r\n\tgetExecutionResult: function(id, callback){\r\n\t\tget('/Executions/'+id, \"\", null, (result) => {\r\n\t\t\tcallback(result);\r\n\t\t});\r\n\t},\r\n\tgetDevices: function(callback){\r\n\t\tget('/Devices/list', \"\", access_token, (devices) => {\r\n\t\t\tcallback(devices);\r\n\t\t});\r\n\t},\r\n\tgetImage: function(id, callback){\r\n\t\tget('/Codes/'+id+'/export/png/url', \"\", access_token, (path) => {\r\n\t\t\tcallback(path);\r\n\t\t});\r\n\t}\r\n}\r\n\r\nvar devices = {\r\n\tibmqxv2: ['ibmqx5qv2', 'ibmqx2', 'qx5qv2', 'qx5q', 'real'],\r\n\tibmqxv3: ['ibmqx3'],\r\n\tsimulator: ['simulator', 'sim_trivial_2', 'ibmqx_qasm_simulator']\r\n};\r\n\r\nfunction post(path, params=\"\", data=null, access_token, callback){\r\n\t\r\n\tif(data == null) data = {};\t\r\n\trequest.post({url: config.url+path+'?access_token='+access_token+params, form: data}, (error, response, body) => {\r\n\t\tif (error) throw error;\r\n\t\tcallback(JSON.parse(response.body));\r\n\t});\r\n}\r\n\r\nfunction get(path, params=\"\", access_token, callback){\r\n\tvar token = \"\";\r\n\tif(access_token) token = \"?access_token=\"+access_token;\r\n\t\r\n\trequest({url: config.url+path+token+params}, (error, response, body) => {\r\n\t\tcallback(JSON.parse(body));\r\n\t});\r\n}\r\n\r\nfunction login(token, callback){\r\n\tvar id = \"\";\r\n\tvar userId = \"\";\r\n\tendpoints.loginWithToken(token, (res) => {\r\n\t\tid = res['id'];\r\n\t\tuserId = res['userId'];\r\n\t\tcallback({'id': id, 'userId': userId});\r\n\t});\t\r\n}\r\n\r\n/*login(\"4b6f2554c89966e032710f924edbb4fb9e36c48053a78ef881e739179ceee274278b43c32ea65f1e00d308352ddca970d66c64ce6bc9e438e32b305eadfcaa29\", (result) => {\r\n\tvar token = result['id'];\r\n\t//var test = 'include \"qelib1.inc\";qreg q[5];creg c[5];x q[0];measure q[0] -> c[0]; measure q[1] -> c[1];';\r\n\tfs.readFile('test.qasm', (error, data) => {\r\n\t\tif (error) throw error;\r\n\t\tendpoints.getDevices(token, (devices) => {\r\n\t\t\tvar device = devices[0];\r\n\t\t\tendpoints.executeCode(String(data), 'simulation', 1000, \"Unnamed Experiment\", null, 60, token, (result) => {\r\n\t\t\t\tconsole.log(result);\r\n\t\t\t\tconsole.log(\"Result from \"+device.name+\"(\"+device.serialNumber+\")\");\r\n\t\t\t\tvar data = result.result.data.p;\r\n\t\t\t\tvar map = [];\r\n\t\t\t\tfor(i = 0; i < data.labels.length; i++){\r\n\t\t\t\t\tmap.push({name: data.labels[i], value: data.values[i]});\r\n\t\t\t\t\t\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t});\r\n});\r\n*/\r\nvar qsikit = function(){}\r\n\r\nqsikit.prototype.connect = function(accessToken, callback){\r\n\tlogin(accessToken, (res) => {\r\n\t\taccess_token = res['id'];\r\n\t\tcallback();\r\n\t});\r\n}\r\n\r\nqsikit.prototype.methods = endpoints;\r\n\r\nmodule.exports = qsikit;\r\n"]}