UNPKG

@magic.batua/recharge

Version:

The Recharge module manages all the mobile prepaid, datacard and DTH recharge functionalities of the Magic Batua platform.

113 lines (92 loc) 5.59 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Source/Operator.js - Postman Documentation</title> <script src="scripts/prettify/prettify.js"></script> <script src="scripts/prettify/lang-css.js"></script> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <link type="text/css" rel="stylesheet" href="styles/ionicons.min.css"> <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> </head> <body> <input type="checkbox" id="nav-trigger" class="nav-trigger" /> <label for="nav-trigger" class="navicon-button x"> <div class="navicon"></div> </label> <label for="nav-trigger" class="overlay"></label> <nav> <h2><a href="index.html">Home</a></h2><h3>Classes</h3><ul><li><a href="Datacard.html">Datacard</a><ul class='methods'><li data-type='method'><a href="Datacard.html#.AllOperators">AllOperators</a></li><li data-type='method'><a href="Datacard.html#.CheckStatus">CheckStatus</a></li><li data-type='method'><a href="Datacard.html#Recharge">Recharge</a></li></ul></li><li><a href="DTH.html">DTH</a><ul class='methods'><li data-type='method'><a href="DTH.html#.AllOperators">AllOperators</a></li><li data-type='method'><a href="DTH.html#.CheckStatus">CheckStatus</a></li><li data-type='method'><a href="DTH.html#Recharge">Recharge</a></li></ul></li><li><a href="Fixedline.html">Fixedline</a><ul class='methods'><li data-type='method'><a href="Fixedline.html#.CheckStatus">CheckStatus</a></li><li data-type='method'><a href="Fixedline.html#.GetOperators">GetOperators</a></li><li data-type='method'><a href="Fixedline.html#Pay">Pay</a></li></ul></li><li><a href="MobilePlan.html">MobilePlan</a></li><li><a href="MobilePostpaid.html">MobilePostpaid</a><ul class='methods'><li data-type='method'><a href="MobilePostpaid.html#.CheckStatus">CheckStatus</a></li><li data-type='method'><a href="MobilePostpaid.html#.GetOperators">GetOperators</a></li><li data-type='method'><a href="MobilePostpaid.html#Pay">Pay</a></li></ul></li><li><a href="MobilePrepaid.html">MobilePrepaid</a><ul class='methods'><li data-type='method'><a href="MobilePrepaid.html#.AllOperators">AllOperators</a></li><li data-type='method'><a href="MobilePrepaid.html#.CheckStatus">CheckStatus</a></li><li data-type='method'><a href="MobilePrepaid.html#.FindOperator">FindOperator</a></li><li data-type='method'><a href="MobilePrepaid.html#.GetPlans">GetPlans</a></li><li data-type='method'><a href="MobilePrepaid.html#Recharge">Recharge</a></li></ul></li><li><a href="Operator.html">Operator</a><ul class='methods'><li data-type='method'><a href="Operator.html#.InitList">InitList</a></li><li data-type='method'><a href="Operator.html#.WithCode">WithCode</a></li></ul></li></ul><h3>Modules</h3><ul><li><a href="module-RechargeError.html">RechargeError</a><ul class='methods'><li data-type='method'><a href="module-RechargeError.html#~Check">Check</a></li></ul></li><li><a href="module-Telecom.html">Telecom</a><ul class='methods'><li data-type='method'><a href="module-Telecom.html#~AllCircles">AllCircles</a></li><li data-type='method'><a href="module-Telecom.html#~CircleWithCode">CircleWithCode</a></li></ul></li></ul> </nav> <div id="main"> <h1 class="page-title">Source/Operator.js</h1> <section> <article> <pre class="prettyprint source linenums"><code>"use strict"; /** * @module Operator * @overview Defines the `Operator` class. * * @author Animesh Mishra &lt;hello@animesh.ltd> * @copyright © Animesh Ltd. All Rights Reserved. */ Object.defineProperty(exports, "__esModule", { value: true }); /** * The `Operator` class models a telecom operator and/or other service * providers that offer products that can be recharged through the Magic * Batua platform. So prepaid mobile companies, DTH operators and datacard * companies all are instances of `Operator`. */ class Operator { /** * Initialises an `Operator` instance. * @param {GetOperatorResponse} json The `GetOperatorResponse` is defined in `Source/Operator.ts`. */ constructor(json) { this.name = json.operator_name; this.code = json.operator_code; // Margin is reported in the form "xx.xxxx%", we'd like to store it // as a floating-point number let fraction = json.margin.substr(0, json.margin.indexOf("%")); this.margin = Number(fraction) / 100.0; } /** * Given an array of provider responses from Rocket in Pocket, instantiates and * returns a `Operator` array. */ static InitList(json) { let providers = Array(); for (var provider of json) { providers.push(new Operator(provider)); } return providers; } /** * Returns an `Operator` with the given provider `code` amongst the list of * `operators` given. If no match is found, returns `null`. */ static WithCode(code, operators) { for (var operator of operators) { if (operator.code == code) { return operator; } } return null; } } exports.Operator = Operator; //# sourceMappingURL=Operator.js.map</code></pre> </article> </section> </div> <br class="clear"> <footer> Documentation generated at Tue Mar 20 2018 03:11:49 GMT+0530 (IST) </footer> <script>prettyPrint();</script> <script src="scripts/linenumber.js"></script> </body> </html>