@dlivr.io/salary-calculator-egypt
Version:
Javascript SDK for calculating Net/Gross salary in Egypt.
27 lines (23 loc) • 750 B
text/typescript
import { Bracket } from "@/data-source/types";
export function thousand(number: number): number {
return number * 1000;
}
export function million(number: number): number {
return number * 1000000;
}
export function calculateTax(
salaryBracket: Bracket,
yearlySalary: number
): number {
let baseYearlySalaryTax = 0;
salaryBracket.stages.forEach((stage) => {
if (yearlySalary > stage.min)
baseYearlySalaryTax +=
(Math.min(yearlySalary, stage.max) - stage.min) *
stage.percentage;
});
return baseYearlySalaryTax;
}
export function isSupported(bracket: Bracket, yearlySalary: number): boolean {
return yearlySalary > bracket.min && yearlySalary <= bracket.max;
}