@kanda-libs/kanda-utils
v1.0.2
Published
Utils for use with Kanda API
Readme
kanda-utils
This repo provides some helper utilities for use with Kanda's API. The main functions provided are
- getInfoWorkType
- getValidFinanceRates
- calculateMonthlyRepayments
getInfoWorkType
This is a very simple helper function to get the relevant InfoWorkType from an array of InfoWorkType[], e.g. from the response from the /api/info/work-type Kanda API endpoint, given a specific WorkType
const infoWorkType = getInfoWorkType(infoWorkTypes, 'ev_charger');
// infoWorkType is type `InfoWorkType | undefined`getValidFinanceRates
This function takes an InfoWorkType object and uses that, along with a job total and deposit amount, to determine which rates are valid
const total = 250000;
const deposit = 10000;
const valid = getValidFinanceRates(infoWorkType, total, deposit);
// valid is type `ValidFinanceRate[]`, which is an extension upon the standard Kanda `FinanceRate` type, provided by this librarycalculateMonthlyRepayments
This function allows you to calculate the monthly repayments for a given FinanceRate (or ValidFinanceRate) by providing the rate and loan amount
const repayment = calculateMonthlyRepayments(rate, loan);
// repayment is type `number`
// repayment is an integer representation in pence, e.g. 1000 = £10.00Combining these functions
Assuming you have a response from the /api/info/work-type Kanda API endpoint
// Assumed implementation below
const infoWorkTypes = getInfoWorkTypes();
// Variables from your site
const total = 250000;
const deposit = 10000;
const workType = 'ev_charger';
// Get relevant infoWorkType
const infoWorkType = getInfoWorkType(infoWorkTypes, workType);
// Get valid rates
const valid = getValidFinanceRates(infoWorkType, total, deposit);
// Get repayment from first valid rate - amount will be in pence, e.g. 1000 = £10.00
const rate = valid[0];
const repayment = calculateMonthlyRepayments(rate, total - deposit);
