{"version":3,"sources":["jsdelivr-header.js","/npm/mpesa-node@0.1.3/src/m-pesa.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,MAAM,eACJ,eAAc,IACd,IAAG,IACH,IAAG,YACH,YAAW,YACX,YAAW,kBACX,kBAAiB,iBACjB,iBAAgB,MAChB,MAAK,SACL,SAAQ,kBACR,mBACE,QAAQ,gBACN,QACJ,QAAO,SACP,UACE,QAAQ,aAKZ,MAAM,MAMJ,WAAA,CAAa,EAAS,CAAC,GACrB,IAAK,EAAO,YAAa,MAAM,IAAI,MAAM,2BACzC,IAAK,EAAO,eAAgB,MAAM,IAAI,MAAM,8BAC5C,KAAK,QAAU,IAAK,GACpB,KAAK,WAAoC,eAAvB,EAAO,YAA+B,aAAe,UACvE,KAAK,QAAU,QAAQ,KAAK,MAC5B,KAAK,SAAW,IACP,SAAS,KAAK,QAAQ,SAAU,KAAK,QAAQ,oBAEtD,KAAK,QAAU,WAA+B,eAApB,KAAK,WAA8B,MAAQ,2BACvE,CAMA,cAAA,GACE,OAAO,eAAe,KAAK,KAApB,IAA6B,UACtC,CAMA,GAAA,GACE,OAAO,IAAI,KAAK,KAAT,IAAkB,UAC3B,CAMA,GAAA,GACE,OAAO,IAAI,KAAK,KAAT,IAAkB,UAC3B,CAEA,WAAA,GACE,OAAO,YAAY,KAAK,KAAjB,IAA0B,UACnC,CACA,WAAA,GACE,GAAuB,eAApB,KAAK,WACN,MAAM,IAAI,MAAM,2CAElB,OAAO,YAAY,KAAK,KAAjB,IAA0B,UACnC,CAEA,iBAAA,GACE,OAAO,kBAAkB,KAAK,KAAvB,IAAgC,UACzC,CAEA,gBAAA,GACE,OAAO,iBAAiB,KAAK,KAAtB,IAA+B,UACxC,CAEA,KAAA,GACE,MAAM,YAAE,EAAW,eAAE,GAAmB,KAAK,QAC7C,OAAO,MAAM,KAAK,KAAX,CAAiB,EAAa,EACvC,CAEA,QAAA,GACE,OAAO,SAAS,KAAK,KAAd,IAAuB,UAChC,CAEA,iBAAA,GACE,OAAO,kBAAkB,KAAK,KAAvB,IAAgC,UACzC,EAGF,OAAO,QAAU","file":"/npm/mpesa-node@0.1.3/src/m-pesa.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/mpesa-node@0.1.3/src/m-pesa.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 {\n  accountBalance,\n  b2b,\n  b2c,\n  c2bRegister,\n  c2bSimulate,\n  lipaNaMpesaOnline,\n  lipaNaMpesaQuery,\n  oAuth,\n  reversal,\n  transactionStatus\n} = require('./endpoints')\nconst {\n  request,\n  security\n} = require('./helpers')\n\n/**\n * Class representing the Mpesa instance\n */\nclass Mpesa {\n  /**\n   * Introduce Mpesa Configuration\n   * @constructor\n   * @param {Object} [config={}] The Configuration  to use for mPesa\n   */\n  constructor (config = {}) {\n    if (!config.consumerKey) throw new Error('Consumer Key is Missing')\n    if (!config.consumerSecret) throw new Error('Consumer Secret is Missing')\n    this.configs = { ...config }\n    this.enviroment = config.environment === 'production' ? 'production' : 'sandbox'\n    this.request = request.bind(this)\n    this.security = () => {\n      return security(this.configs.certPath, this.configs.securityCredential)\n    }\n    this.baseURL = `https://${this.enviroment === 'production' ? 'api' : 'sandbox'}.safaricom.co.ke`\n  }\n\n  /**\n   * AccountBalance via instance\n   * @borrows AccountBalance as accountBalanceCall\n   */\n  accountBalance () {\n    return accountBalance.bind(this)(...arguments)\n  }\n\n  /**\n   * B2B Request via instance\n   * @name b2bCall\n   */\n  b2b () {\n    return b2b.bind(this)(...arguments)\n  }\n\n  /**\n   * B2C Request\n   * @borrows B2CRequest as b2c\n   */\n  b2c () {\n    return b2c.bind(this)(...arguments)\n  }\n  \n  c2bRegister () {\n    return c2bRegister.bind(this)(...arguments)\n  }\n  c2bSimulate () {\n    if(this.enviroment === 'production'){\n      throw new Error('Cannot call C2B simulate in production.')\n    }\n    return c2bSimulate.bind(this)(...arguments)\n  }\n\n  lipaNaMpesaOnline () {\n    return lipaNaMpesaOnline.bind(this)(...arguments)\n  }\n\n  lipaNaMpesaQuery () {\n    return lipaNaMpesaQuery.bind(this)(...arguments)\n  }\n\n  oAuth () {\n    const { consumerKey, consumerSecret } = this.configs\n    return oAuth.bind(this)(consumerKey, consumerSecret)\n  }\n\n  reversal () {\n    return reversal.bind(this)(...arguments)\n  }\n          \n  transactionStatus () {\n    return transactionStatus.bind(this)(...arguments)\n  }\n}\n\nmodule.exports = Mpesa"]}