{"version":3,"sources":["jsdelivr-header.js","/npm/node-intercom@0.0.4/intercom.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,IAAI,QAAU,QAAQ,WAClB,GAAU,QAAQ,eAEtB,SAAS,UAAU,GACjB,IAAI,EACJ,IACE,EAAM,KAAK,MAAM,EACnB,CAAE,MAAO,GACP,MAAa,CAAC,CAChB,CACA,OAAO,CACT,CAEA,IAAI,SAAW,SAAU,EAAS,GAChC,IAAI,IAAI,KAAQ,EACV,EAAK,eAAe,KACtB,EAAQ,GAAQ,EAAK,IAGzB,OAAO,CACT,EAIA,QAAQ,IAAM,SAAS,GAErB,IAAI,EAAO,WACT,MAAO,SAAW,IAAI,OAAO,EAAO,OAAS,IAAM,EAAO,SAAS,SAAS,SAC9E,EAEA,MAAO,CACL,MAAO,CACL,IAAK,SAAS,EAAM,GACT,MAAN,IAAY,EAAK,GAEhB,EAAO,CACT,OAAU,MACV,IAAO,oCACP,QAAW,CAAC,cAAiB,MAG/B,OAAO,QAAQ,GAAM,SAAS,EAAG,EAAG,GAC9B,EACF,EAAG,KAAM,KAAM,MAEf,EAAG,EAAE,WAAY,EAErB,GACF,EAEA,IAAK,SAAS,EAAkB,GAE9B,IAEI,EAAO,CACT,OAAU,MACV,IAAO,uCAJoC,GAAlC,EAAiB,QAAQ,KAAc,UAAY,SAIT,IAAM,EACzD,QAAW,CAAE,cAAiB,MAGhC,OAAO,QAAQ,GAAM,SAAS,EAAG,EAAG,GAC9B,EACF,EAAG,KAAM,KAAM,MAEf,EAAG,EAAE,WAAY,EAErB,GACF,EAEA,KAAM,SAAS,EAAM,GACnB,IAAI,EAAO,CACT,OAAU,OACV,IAAO,oCACP,QAAW,CAAE,cAAiB,KAC9B,KAAQ,KAAK,UAAU,IAGzB,OAAO,QAAQ,GAAM,SAAS,EAAG,EAAG,GAC9B,EACF,EAAG,KAAM,KAAM,MAEf,EAAG,EAAE,WAAY,EAErB,GACF,EAEA,IAAK,SAAS,EAAM,GAClB,IAAI,EAAO,CACT,OAAU,MACV,IAAO,oCACP,QAAW,CAAE,cAAiB,KAC9B,KAAQ,KAAK,UAAU,IAGzB,OAAO,QAAQ,GAAM,SAAS,EAAG,EAAG,GAC9B,EACF,EAAG,KAAM,KAAM,MAEf,EAAG,EAAE,WAAY,EAErB,GACF,EAEA,OAAQ,SAAS,EAAM,GACrB,IAEI,EAAO,CACT,OAAU,SACV,IAAO,qCAJI,GAAG,UAAU,GAKxB,QAAW,CAAE,cAAiB,MAGhC,OAAO,QAAQ,GAAM,SAAS,EAAG,EAAG,GAC9B,EACF,EAAG,KAAM,KAAM,MAEf,EAAG,EAAE,WAAY,EAErB,GACF,GAGN","file":"/npm/node-intercom@0.0.4/intercom.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/node-intercom@0.0.4/intercom.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","var request = require(\"request\");\nvar qs      = require(\"querystring\");\n\nfunction parseJSON(str) {\n  var obj;\n  try {\n    obj = JSON.parse(str);\n  } catch (e) {\n    return obj = {};\n  }\n  return obj;\n}\n\nvar set_args = function (options, args) {\n  for(var attr in args) {\n    if (args.hasOwnProperty(attr)){\n      options[attr] = args[attr];\n    }\n  }\n  return options;\n};\n\n\n\nexports.app = function(config) {\n\n  var sign = function() {\n    return \"Basic \" + new Buffer(config.APP_ID + \":\" + config.API_KEY).toString(\"base64\");\n  }\n\n  return {\n    users: {\n      all: function(args, cb) {\n        if(cb == null) cb = args; \n\n        var args = {\n          \"method\": \"GET\",\n          \"url\": \" https://api.intercom.io/v1/users\",\n          \"headers\": {\"Authorization\": sign() } \n        }\n\n        return request(args, function(e, r, body) {\n          if (e) {\n            cb(null, null, null);\n          } else {\n            cb(r.statusCode, body);\n          }\n        });\n      },\n     \n      get: function(user_id_or_email, cb) {\n        \n        var key = (user_id_or_email.indexOf(\"@\") == -1) ? \"user_id\" : \"email\";\n\n        var args = {\n          \"method\": \"GET\",\n          \"url\": \"https://api.intercom.io/v1/users/?\"+ key + \"=\" + user_id_or_email,\n          \"headers\": { \"Authorization\": sign() } \n        }\n\n        return request(args, function(e, r, body) {\n          if (e) {\n            cb(null, null, null);\n          } else {\n            cb(r.statusCode, body);\n          }\n        });\n      },\n\n      post: function(data, cb) {\n        var args = {\n          \"method\": \"POST\",\n          \"url\": \"https://api.intercom.io/v1/users/\",\n          \"headers\": { \"Authorization\": sign() },\n          \"body\": JSON.stringify(data)\n        }\n\n        return request(args, function(e, r, body) {\n          if (e) {\n            cb(null, null, null);\n          } else {\n            cb(r.statusCode, body);\n          }\n        });\n      },\n     \n      put: function(data, cb) {\n        var args = {\n          \"method\": \"PUT\",\n          \"url\": \"https://api.intercom.io/v1/users/\",\n          \"headers\": { \"Authorization\": sign() },\n          \"body\": JSON.stringify(data)\n        }\n\n        return request(args, function(e, r, body) {\n          if (e) {\n            cb(null, null, null);\n          } else {\n            cb(r.statusCode, body);\n          }\n        });\n      },\n\n      delete: function(data, cb) {\n        var params = qs.stringify(data);\n\n        var args = {\n          \"method\": \"DELETE\",\n          \"url\": \"https://api.intercom.io/v1/users/?\" + params,\n          \"headers\": { \"Authorization\": sign() }\n        }\n\n        return request(args, function(e, r, body) {\n          if (e) {\n            cb(null, null, null);\n          } else {\n            cb(r.statusCode, body);\n          }\n        });\n      }\n    }\n  }\n}"]}