@gouvfr-anct/lieux-de-mediation-numerique
Version:
📚 Bibliothèque pour la modélisation des lieux de médiation numérique respectant le standard du schéma de données des lieux de médiation numériques
18 lines (17 loc) • 861 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FraisACharge = exports.Frais = void 0;
const errors_1 = require("./errors");
var Frais;
(function (Frais) {
Frais["Gratuit"] = "Gratuit";
Frais["GratuitSousCondition"] = "Gratuit sous condition";
Frais["Payant"] = "Payant";
})(Frais || (exports.Frais = Frais = {}));
const firstInvalidFraisACharge = (fraisACharge) => !Object.values(Frais).includes(fraisACharge);
const throwFraisAChargeError = (fraisACharge) => {
throw new errors_1.FraisAChargeError(fraisACharge.find(firstInvalidFraisACharge) ?? 'frais à charge indéfini');
};
const isFraisACharge = (fraisACharge) => fraisACharge.find(firstInvalidFraisACharge) == null;
const FraisACharge = (frais) => (isFraisACharge(frais) ? frais : throwFraisAChargeError(frais));
exports.FraisACharge = FraisACharge;