@gouvfr-anct/mednum
Version:
✨ Permet de transformer une source de données vers le schéma des lieux de mediation numerique
15 lines (14 loc) • 1.13 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.processPresentation = void 0;
const cleanPresentationFormat = (presentation) => presentation.replace(/\n/gu, '').replace(/\\/gu, '').replace(/\r/gu, '');
const resumeIfAny = (source, colonne) => colonne == null ? {} : { resume: cleanPresentationFormat(source[colonne]?.toString() ?? '') };
const detailIfAny = (source, colonne) => colonne == null ? {} : { detail: cleanPresentationFormat(source[colonne]?.toString() ?? '') };
const PRESENTATION_RESUME_MAX_LENGTH = 280;
const shouldMoveLongResumeToDetails = (presentations) => (presentations.detail?.length ?? 0) === 0 && (presentations.resume?.length ?? 0) > PRESENTATION_RESUME_MAX_LENGTH;
const fixPresentationOrder = (presentations) => shouldMoveLongResumeToDetails(presentations) ? { detail: presentations.resume } : presentations;
const processPresentation = (source, matching) => fixPresentationOrder({
...resumeIfAny(source, matching.presentation_resume?.colonne),
...detailIfAny(source, matching.presentation_detail?.colonne)
});
exports.processPresentation = processPresentation;