@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
20 lines (19 loc) • 1.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Localisation = exports.isValidLocalisation = void 0;
const errors_1 = require("./errors");
const isValidLatitude = (localisationData) => localisationData.latitude >= -90 && localisationData.latitude <= 90;
const isValidLongitude = (localisationData) => localisationData.longitude >= -180 && localisationData.longitude <= 180;
const isValidLocalisation = (localisationData) => isValidLatitude(localisationData) && isValidLongitude(localisationData);
exports.isValidLocalisation = isValidLocalisation;
const throwLocalisationError = (localisationData) => {
if (!isValidLatitude(localisationData)) {
throw new errors_1.LatitudeError(localisationData.latitude);
}
if (!isValidLongitude(localisationData)) {
throw new errors_1.LongitudeError(localisationData.longitude);
}
throw new Error();
};
const Localisation = (localisation) => (0, exports.isValidLocalisation)(localisation) ? { ...localisation } : throwLocalisationError(localisation);
exports.Localisation = Localisation;