{"version":3,"sources":["jsdelivr-header.js","/npm/maxipago@0.6.0/lib/maxipago.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,IAAI,QAAU,QAAQ,mBACpB,OAAS,QAAQ,UACjB,SAAW,QAAQ,WAGrB,QAAQ,QAAU,WAGhB,IACE,EAAU,CAAC,EACX,EAAc,wBAIZ,EAAc,CAChB,cAAc,EACd,eAAe,GAGb,EAAa,SAAS,GACxB,OAAO,SAAS,EAAK,EAAK,EAAK,GAE7B,GADA,QAAQ,IAAI,GACR,EAAK,OAAO,EAAS,GACzB,OAAO,YAAY,EAAc,GAAa,SAAS,EAAK,GAE1D,OADA,QAAQ,IAAI,GACR,EAAY,EAAS,GAClB,OAAS,IAAa,EAAI,aAAc,EACjD,GACF,CACF,EA8CA,OA5CA,SAAiB,EAAY,EAAa,GACxC,IAAK,EACH,MAAM,IAAI,MAAM,wBAuClB,OApCA,KAAK,KAAO,IAAQ,EACpB,EAAU,CACR,WAAY,EACZ,YAAa,GAGf,KAAK,OAAS,QAAQ,mBAAmB,CACvC,IAAK,YAAc,KAAK,KAAO,OAAS,IAAM,mBAC9C,YAAa,4BAGf,KAAK,KAAO,SAAS,EAAM,GACzB,IAAI,EAAU,SAAS,aAAa,EAxCnB,WAwCyC,EAAS,GACnE,KAAK,OAAO,KAtCA,wBAsCkB,EAAS,EAAW,GACpD,EAEA,KAAK,YAAc,SAAS,EAAQ,GAClC,IAAI,EAAY,SAAS,oBAAoB,EAAQ,EAAS,GAC9D,KAAK,OAAO,KAAK,EAAa,EAAW,EAAW,GACtD,EAEA,KAAK,eAAiB,SAAS,EAAQ,GACrC,IAAI,EAAY,SAAS,uBAAuB,EAAQ,EAAS,GACjE,KAAK,OAAO,KAAK,EAAa,EAAW,EAAW,GACtD,EAEA,KAAK,QAAU,SAAS,EAAM,GAC5B,IAAI,EAAU,SAAS,gBAAgB,EAAM,EAAS,GACtD,KAAK,OAAO,KAAK,EAAa,EAAS,EAAW,GACpD,EAEA,KAAK,WAAa,SAAS,EAAM,GAC/B,IAAI,EAAU,SAAS,mBAAmB,EAAM,EAAS,GACzD,KAAK,OAAO,KAAK,EAAa,EAAS,EAAW,GACpD,EAEO,IACT,CAGD,CAvEiB","file":"/npm/maxipago@0.6.0/lib/maxipago.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/maxipago@0.6.0/lib/maxipago.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 restify = require('restify-clients'),\n  xml2js = require('xml2js'),\n  mp_utils = require('./utils');\n\n// Create a gateway to MaxiPago service\nexports.Gateway = (function() {\n\n  // maxipago constants\n  var MP_API_VERSION = '3.1.1.15',\n    MP_AUTH = {},\n    MP_POST_API = '/UniversalAPI/postAPI',\n    MP_POST_XML = '/UniversalAPI/postXML';\n\n  // other constants\n  var XML_OPTIONS = {\n    explicitRoot: false,\n    explicitArray: false\n  };\n\n  var reqHandler = function(callback) {\n    return function(err, req, res, xml_response) {\n      console.log(err);\n      if (err) return callback(err);\n      xml2js.parseString(xml_response, XML_OPTIONS, function(err, obj) {\n        console.log(obj);\n        if (err) return callback(err);\n        return callback(undefined, !!obj.errorMessage, obj);\n      });\n    };\n  };\n\n  function Gateway(merchantId, merchantKey, test) {\n    if (!merchantKey) {\n      throw new Error('No merchantKey found');\n    }\n\n    this.test = test || false;\n    MP_AUTH = {\n      merchantId: merchantId,\n      merchantKey: merchantKey\n    };\n\n    this.client = restify.createStringClient({\n      url: 'https://' + (this.test ? 'test' : '') + 'api.maxipago.net',\n      contentType: 'text/xml; charset=utf-8'\n    });\n\n    this.sale = function(sale, callback) {\n      var saleXML = mp_utils.buildSaleXML(sale, MP_API_VERSION, MP_AUTH, XML_OPTIONS);\n      this.client.post(MP_POST_XML, saleXML, reqHandler(callback));\n    };\n\n    this.addCustomer = function(client, callback) {\n      var clientXML = mp_utils.buildAddCustomerXML(client, MP_AUTH, XML_OPTIONS);\n      this.client.post(MP_POST_API, clientXML, reqHandler(callback));\n    };\n\n    this.updateCustomer = function(client, callback) {\n      var clientXML = mp_utils.buildUpdateCustomerXML(client, MP_AUTH, XML_OPTIONS);\n      this.client.post(MP_POST_API, clientXML, reqHandler(callback));\n    };\n\n    this.addCard = function(card, callback) {\n      var cardXML = mp_utils.buildAddCardXML(card, MP_AUTH, XML_OPTIONS);\n      this.client.post(MP_POST_API, cardXML, reqHandler(callback));\n    };\n\n    this.deleteCard = function(card, callback) {\n      var cardXML = mp_utils.buildDeleteCardXML(card, MP_AUTH, XML_OPTIONS);\n      this.client.post(MP_POST_API, cardXML, reqHandler(callback));\n    };\n\n    return this;\n  }\n\n  return Gateway;\n})();\n"]}