UNPKG

@tricoteuses/assemblee

Version:

Retrieve, clean up & handle French Assemblée nationale's open data

567 lines (566 loc) 19 kB
import t from "node:assert"; import { c as f, a as b, b as _ } from "./amendements-DcffXOt8.js"; import { d as Y } from "./amendements-DcffXOt8.js"; function $(e) { f(e), t.strictEqual(e.uid["@xsi:type"], "IdActeur_type"), e.uid = e.uid["#text"], t(e.uid); const n = e.etatCivil; { f(n); const o = n.ident; { f(o); const s = n.infoNaissance; f(s); } } const d = e.profession; if (d !== void 0) { f(d); const o = d.socProcINSEE; t(o), f(o), delete d.socProcINSEE, d.socProcInsee = o; } const r = e.uri_hatvp; r !== void 0 && (e.uriHatvp = r, delete e.uri_hatvp); let c = e.adresses; if (c !== void 0 && (c = c.adresse, c === void 0 ? (delete e.adresses, c = void 0) : Array.isArray(c) ? e.adresses = c : (t.notStrictEqual(c, null), t.strictEqual(typeof c, "object"), e.adresses = c = [c]), c !== void 0)) for (const o of c) { f(o); const s = o["@xsi:type"]; t( [ "AdresseMail_Type", "AdressePostale_Type", "AdresseSiteWeb_Type", "AdresseTelephonique_Type" ].includes(s), `Unexpected "@xsi:type": ${s}` ), o.xsiType = s, delete o["@xsi:type"], t.notStrictEqual(o.uid, void 0), t.notStrictEqual(o.type, void 0), t.notStrictEqual(o.typeLibelle, void 0), s === "AdressePostale_Type" && t.strictEqual(o.adresseDeRattachement, void 0); } let l = e.mandats; if (l !== void 0) { let o = l.mandat; Array.isArray(o) ? l = e.mandats = o : typeof o == "object" && (l = e.mandats = [o]); for (const s of l) { f(s); const u = s["@xsi:type"]; u !== void 0 && (s.xsiType = u, delete s["@xsi:type"]); const m = s.infosQualite; f(m); const i = s.organes; delete s.organes; let a = i.organeRef; t(a), Array.isArray(a) || (a = [a]), s.organesRefs = a; let v = s.suppleants; delete s.suppleants, v && (v = v.suppleant, t(v), s.suppleant = v, f(v)); const R = s.election; if (R !== void 0) { f(R); const D = R.lieu; f(D); } const O = s.mandature; O !== void 0 && f(O), t.strictEqual(s.chambre, void 0); let y = s.collaborateurs; if (y !== void 0) { const D = Array.isArray(y) ? y.filter((A) => A !== null) : [y]; y = [], D.map(({ collaborateur: A }) => { if (Array.isArray(A)) for (const q of A) q !== null && y.push(q); else A && y.push(A); }), y.length === 0 ? (delete s.collaborateurs, y = void 0) : s.collaborateurs = y; for (const A of y || []) f(A), t.strictEqual(A.dateDebut, void 0), t.strictEqual(A.dateFin, void 0); } const x = s.InfosHorsSIAN; x !== void 0 && (f(x), t.strictEqual(x.HATVP_URI, void 0), t.strictEqual(Object.keys(x).length, 0), delete s.InfosHorsSIAN); } l.sort( (s, u) => s.uid.length === u.uid.length ? s.uid.localeCompare(u.uid) : s.uid.length - u.uid.length ); } let p = e.deports; if (p !== void 0) { let o = p.deport; Array.isArray(o) ? p = e.deports = o : typeof o == "object" && (p = e.deports = [o]); for (const s of p) { f(s); const u = s.cible; f(u), t.strictEqual(u.references, void 0); } p.sort( (s, u) => s.uid.length === u.uid.length ? s.uid.localeCompare(u.uid) : s.uid.length - u.uid.length ); } } function C(e) { const n = e.etudePLFRef; e.etudePLFRef !== void 0 && (delete e.etudePLFRef, e.etudePlfRef = n); } function w(e) { if (f(e), e.metadatas?.dateSuppression !== void 0) { for (const i of Object.getOwnPropertyNames(e)) delete e[i]; return; } const n = e["@xsi:type"]; n !== void 0 && (e.xsiType = n, delete e["@xsi:type"]); const d = e.cycleDeVie; t(d); { const i = d.chrono; t(i), f(i); } let r = e.divisions; if (r !== void 0) { r = r.division, Array.isArray(r) || (t(r), r = [r]), e.divisions = r; for (const i of r) w(i); } t.strictEqual(e.redacteur, void 0); const c = e.classification; t(c), f(c); let l = e.auteurs; if (l !== void 0) { l = l.auteur, Array.isArray(l) || (t(l), l = [l]), e.auteurs = l; for (const i of l) { let a = i.organe; a !== void 0 && (i.organeRef = a.organeRef, delete i.organe); } } const p = e.notice; b(p, "adoptionConforme"); let o = e.coSignataires; if (o !== void 0) { o = o.coSignataire, Array.isArray(o) || (t(o), o = [o]), e.coSignataires = o; for (const i of o) { f(i), b(i, "edite"); let a = i.acteur; a !== void 0 && (a = a.acteurRef, t(a), delete i.acteur, i.acteurRef = a); const v = i.organe; v !== void 0 && b(v, "etApparentes"); } } const s = e.depotAmendements; if (s !== void 0) { f(s); const i = s.amendementsSeance; f(i), b(i, "amendable"); let a = s.amendementsCommission; if (a !== void 0) { a = a.commission, Array.isArray(a) || (t(a), a = [a]), s.amendementsCommission = a; for (const v of a) f(v), b(v, "amendable"), t.strictEqual(v.dateLimiteDepot, void 0); } } const u = e.imprimerie; if (u !== void 0) { f(u); const i = u.DIAN; i !== void 0 && (delete u.DIAN, u.dian = i); const a = u.ISBN; a !== void 0 && (delete u.ISBN, u.isbn = a); const v = u.ISSN; v !== void 0 && (delete u.ISSN, u.issn = v); } b(e, "rapportPublie"); let m = e.organesReferents; m !== void 0 && (m = m.organeRef, Array.isArray(m) || (t(m), m = [m]), e.organesReferents = m); } function j(e) { f(e); const n = e["@xsi:type"]; n !== void 0 && (e.xsiType = n, delete e["@xsi:type"]); let d = e.auteurs; d !== void 0 && (d = d.acteurRef, Array.isArray(d) || (t(d), d = [d]), e.auteursRefs = d, delete e.auteurs); const r = e.casSaisine; r !== void 0 && V(r); const c = e.contributionInternaute; c !== void 0 && f(c), t.strictEqual(e.dateRetrait, void 0); const l = e.decision; l !== void 0 && V(l); const p = e.infoJO; p !== void 0 && (P(p), e.infoJo = p, delete e.infoJO); const o = e.infoJOCE; if (o !== void 0) { e.infoJoce = o, delete e.infoJOCE; const S = o.refJOCE; S !== void 0 && (o.refJoce = S, delete o.refJOCE); const h = o.dateJOCE; h !== void 0 && (o.dateJoce = h, delete o.dateJOCE); } let s = e.infoJORect; if (s !== void 0) { Array.isArray(s) || (s = [s]), e.infoJoRect = s, delete e.infoJORect; for (const S of s) P(S); } F(e); let u = e.initiateurs; u !== void 0 && (t.strictEqual(e.initiateur, void 0), u.acteurRef === void 0 ? t.notStrictEqual(u.organeRef, void 0) : (Array.isArray(u) || (t(u), u = [u]), u = { acteurs: u }), e.initiateur = u, delete e.initiateurs), t.strictEqual(e.odSeancejRef, void 0); const m = e.provenance; m !== void 0 && (delete e.provenance, e.provenanceRef = m); let i = e.rapporteurs; if (i !== void 0) { i = i.rapporteur, Array.isArray(i) || (t(i), i = [i]), e.rapporteurs = i; for (const S of i) C(S); } const a = e.referenceNOR; a !== void 0 && (e.referenceNor = a, delete e.referenceNOR), t.strictEqual(e.reunion, void 0); const v = e.statutAdoption; v !== void 0 && V(v); const R = e.statutConclusion; R !== void 0 && (V(R), R.famCode === "TSORTFnull" && delete e.statutConclusion); const O = e.texteAdopte; O !== void 0 && (delete e.texteAdopte, e.texteAdopteRef = O); const y = e.texteAssocie; y !== void 0 && (delete e.texteAssocie, e.texteAssocieRef = y); let x = e.textesAssocies; if (x !== void 0) { x = x.texteAssocie, Array.isArray(x) || (t(x), x = [x]), e.textesAssocies = x; for (const S of x) { const h = S.refTexteAssocie; h !== void 0 && (delete S.refTexteAssocie, S.texteAssocieRef = h); } } const D = e.typeDeclaration; D !== void 0 && V(D); const A = e.typeMotion; A !== void 0 && V(A); const q = e.typeMotionCensure; q !== void 0 && V(q); let E = e.voteRefs; E !== void 0 && (E = E.voteRef, Array.isArray(E) || (t(E), E = [E]), e.voteRefs = E); let J = e.actesLegislatifs; if (J !== void 0) { J = J.acteLegislatif, Array.isArray(J) || (t(J), J = [J]), e.actesLegislatifs = J; for (const S of J) j(S); } } function F(e) { const n = e.initiateur; if (n !== void 0) { let d = n.acteurs; d !== void 0 && (d = d.acteur, Array.isArray(d) || (t(d), d = [d]), d.length > 0 ? n.acteurs = d : delete n.acteurs); let r = n.organes; r !== void 0 && (r = r.organe.organeRef.uid, t.notStrictEqual(r, void 0), n.organeRef = r, delete n.organes), n.acteurs === void 0 && n.organeRef === void 0 && delete e.initiateur; } } function V(e) { e.famCode = e.fam_code, delete e.fam_code, t(e.famCode), e.libelle || (e.libelle = e.famCode); } function P(e) { f(e); const n = e.typeJO; n !== void 0 && (e.typeJo = n, delete e.typeJO); const d = e.dateJO; d !== void 0 && (e.dateJo = d, delete e.dateJO), t.strictEqual(e.pageJO, void 0); const r = e.numJO; r !== void 0 && (e.numJo = r, delete e.numJO); const c = e.referenceNOR; c !== void 0 && (e.referenceNor = c, delete e.referenceNOR); } function B(e) { f(e); const n = e["@xsi:type"]; n !== void 0 && (e.xsiType = n, delete e["@xsi:type"]); const d = e.titreDossier; f(d), F(e); let r = e.actesLegislatifs; if (r !== void 0) { r = r.acteLegislatif, Array.isArray(r) || (t(r), r = [r]), e.actesLegislatifs = r; for (const l of r) j(l); } let c = e.PLF; if (c !== void 0) { c = c.EtudePLF, t(Array.isArray(c)), delete e.PLF, e.plf = c; for (const l of c) { let p = l.rapporteur; if (p !== void 0) { Array.isArray(p) || (t(p), p = [p]), delete l.rapporteur, l.rapporteurs = p; for (const s of p) C(s); } let o = l.missionMinefi; o !== void 0 && M(o), l.ordreDiqs = l.ordreDIQS, delete l.ordreDIQS, t(l.ordreDiqs); } } } function M(e) { let n = e.missions; if (n !== void 0) { n = n.mission, Array.isArray(n) || (t(n), n = [n]), e.missions = n; for (const d of n) M(d); } } function k(e) { f(e); const n = e["@xsi:type"]; n !== void 0 && (e.xsiType = n, delete e["@xsi:type"]); const d = e.viMoDe; f(d); const r = e.organeParent; r !== void 0 && (delete e.organeParent, e.organeParentRef = r), t.strictEqual(e.chambre, void 0); const c = e.secretariat; c !== void 0 && f(c); const l = e.lieu; if (l !== void 0) { f(l); const s = l.region; s !== void 0 && f(s); const u = l.departement; u !== void 0 && f(u); } e.couleurAssociee === null && delete e.couleurAssociee; let o = e.listePays; o !== void 0 && (o = o.paysRef, Array.isArray(o) || (t.strictEqual(typeof o, "string"), o = [o]), e.listePays = o); } function g(e) { f(e); const n = e.chrono; t(n); { f(n); let d = n.creation; t.strictEqual(typeof d, "string"), d = new Date(d), n.creation = d; let r = n.cloture; r !== void 0 && (t.strictEqual(typeof r, "string"), r = new Date(r), n.cloture = r); } } function U(e) { f(e), b(e, "captationVideo"), b(e, "comiteSecret"), b(e, "ouverturePresse"); const n = e["@xsi:type"]; n !== void 0 && (e.xsiType = n, delete e["@xsi:type"]); const d = e.timeStampDebut; t.notStrictEqual(d, void 0), e.timestampDebut = d, delete e.timeStampDebut; let r = e.timeStampFin; r !== void 0 && (t.strictEqual(typeof r, "string"), r = new Date(r), e.timestampFin = r, delete e.timeStampFin); const c = e.lieu; c !== void 0 && f(c); const l = e.cycleDeVie; t.notStrictEqual(l, void 0), g(l); const p = e.demandeurs; if (p !== void 0) { let i = p.acteur; if (i !== void 0) { Array.isArray(i) || (t.notStrictEqual(i, null), t.strictEqual(typeof i, "object"), i = [i]), p.acteurs = i, delete p.acteur; for (const v of i) f(v); } const a = p.organe; a !== void 0 && f(a); } const o = e.demandeur; if (o !== void 0) { t.strictEqual(e.demandeurs, void 0), delete e.demandeur; let i = o.acteur; if (i !== void 0) { t.notStrictEqual(i, null), t.strictEqual(typeof i, "object"); const v = [i]; o.acteurs = v, delete o.acteur, e.demandeurs = o; for (const R of v) f(R); } const a = o.organe; a !== void 0 && f(a); } const s = e.participants; if (s !== void 0) { f(s); let i = s.participantsInternes; i !== void 0 && (i = i.participantInterne, Array.isArray(i) || (t.notStrictEqual(i, null), t.strictEqual(typeof i, "object"), i = [i]), s.participantsInternes = i); let a = s.personnesAuditionnees; if (a !== void 0) if (a = a.personneAuditionnee, a === null) delete s.personnesAuditionnees; else { Array.isArray(a) || (t.strictEqual(typeof a, "object"), a = [a]), a = a.filter( (v) => v !== null ), a.length > 0 ? s.personnesAuditionnees = a : delete s.personnesAuditionnees; for (const v of a) { const R = v.uid["@xsi:type"]; t(R), v.xsiType = R; const O = v.uid["#text"]; t(O), v.uid = O; const y = v.ident; t(y), f(y); } } } if (e.ODJ !== void 0) { const i = e.ODJ; e.odj = i, delete e.ODJ; { f(i); let a = i.convocationODJ; a !== void 0 && (Array.isArray(a.item) ? a = a.item : (t(a.item), a = [a.item]), i.convocationOdj = a, delete i.convocationODJ); let v = i.resumeODJ; v !== void 0 && (Array.isArray(v.item) ? v = v.item : (t(v.item), v = [v.item]), i.resumeOdj = v, delete i.resumeODJ); let R = i.pointsODJ; if (R !== void 0) { let O = R.pointODJ; Array.isArray(O) ? R = O : (t(O), R = [O]), i.pointsOdj = R; for (const y of R) { f(y), b(y, "comiteSecret"); const x = y["@xsi:type"]; x !== void 0 && (y.xsiType = x, delete y["@xsi:type"]); const D = y.cycleDeVie; t.notStrictEqual(D, void 0), g(D), t.strictEqual(y.demandeurPoint, void 0); let A = y.dossiersLegislatifsRefs; A !== void 0 && (Array.isArray(A.dossierRef) ? A = A.dossierRef : (t(A.dossierRef), A = [A.dossierRef]), y.dossiersLegislatifsRefs = A), y.typePointOdj = y.typePointODJ, delete y.typePointODJ, t.strictEqual(y.textesAssocies, void 0), y.natureTravauxOdj = y.natureTravauxODJ, delete y.natureTravauxODJ; let q = y.dateConfPres; q !== void 0 && (t.strictEqual(typeof q, "string"), t(/^\d{4}-\d{2}-\d{2}\+\d{2}:00$/.test(q)), q = new Date(q.split("+")[0]), y.dateConfPres = q); let E = y.dateLettreMinistre; E !== void 0 && (t.strictEqual(typeof E, "string"), t(/^\d{4}-\d{2}-\d{2}\+\d{2}:00$/.test(E)), E = new Date(E.split("+")[0]), y.dateLettreMinistre = E); } delete i.pointsODJ; } } } const u = e.identifiants; if (u !== void 0) { f(u); const i = u.numSeanceJO; i !== void 0 && (u.numSeanceJo = i, delete u.numSeanceJO); const a = u.idJO; a !== void 0 && (u.idJo = a, delete u.idJO); let v = u.DateSeance; t.strictEqual(typeof v, "string"), t(/^\d{4}-\d{2}-\d{2}\+\d{2}:00$/.test(v)), v = new Date(v.split("+")[0]), u.dateSeance = v, delete u.DateSeance; } const m = e.infosReunionsInternationale; if (m !== void 0) { f(m), b( m, "estReunionInternationale" ); let i = m.listePays; i !== void 0 && (i = i.paysRef, Array.isArray(i) || (t.strictEqual(typeof i, "string"), i = [i]), m.listePays = i); } } function T(e) { f(e); let n = e.nonVotants; if (n === void 0 ? (n = e.nonVotant, delete e.nonVotant) : t.strictEqual(e.nonVotant, void 0), n !== void 0) { typeof n == "string" ? (t.strictEqual(n, "0"), n = []) : Array.isArray(n) || (t(n), n = [n]); const p = n; n = []; for (let o of p) o !== null && (o = o.votant, Array.isArray(o) ? n.push(...o) : (t(o), n.push(o))); if (n.length === 0) delete e.nonVotants; else { e.nonVotants = n; for (const o of n) I(o); } } let d = e.pour; if (d === void 0 ? (d = e.pours, delete e.pours) : t.strictEqual(e.pours, void 0), d !== void 0) if (d = d.votant, Array.isArray(d) || (t(d), d = [d]), d.length === 0) delete e.pour; else { e.pour = d; for (const p of d) I(p); } let r = e.contre; if (r === void 0 ? (r = e.contres, delete e.contres) : t.strictEqual(e.contres, void 0), r !== void 0) if (r = r.votant, Array.isArray(r) || (t(r), r = [r]), r.length === 0) delete e.contre; else { e.contre = r; for (const p of r) I(p); } let c = e.abstentions; if (c === void 0 ? (c = e.abstention, delete e.abstention) : t.strictEqual(e.abstention, void 0), c !== void 0) { Array.isArray(c) || (t(c), c = [c]); const p = c; c = []; for (let o of p) o !== null && (o = o.votant, Array.isArray(o) ? c.push(...o) : (t(o), c.push(o))); if (c.length === 0) delete e.abstentions; else { e.abstentions = c; for (const o of c) I(o); } } let l = e.nonVotantsVolontaires; if (l !== void 0) { Array.isArray(l) || (l = [l]); const p = l; l = []; for (let o of p) o !== null && (o = o.votant, Array.isArray(o) ? l.push(...o) : (t(o), l.push(o))); if (l.length === 0) delete e.nonVotantsVolontaires; else { e.nonVotantsVolontaires = l; for (const o of l) I(o); } } } function W(e) { f(e); const n = e.demandeur; t(n), f(n), t.strictEqual(n.referenceLegislative, void 0); const d = e.objet; t(d), f(d), t.strictEqual(d.referenceLegislative, void 0); let r = e.ventilationVotes; t(r); { r = r.organe, t(r); let l = r.groupes; t(l); { l = l.groupe, t(Array.isArray(l)); for (const p of l) { const o = p.vote; t(o); { const s = o.decompteVoix; t(s), s.abstention !== void 0 && (t.strictEqual(s.abstentions, void 0), s.abstentions = s.abstention, delete s.abstention), s.nonVotant !== void 0 && (t.strictEqual(s.nonVotants, void 0), s.nonVotants = s.nonVotant, delete s.nonVotant); const u = o.decompteNominatif; t(u), T(u); } } r.groupes = l; } e.ventilationVotes = r; } const c = e.miseAuPoint; if (c !== void 0) { T(c); let l = c.dysfonctionnement; l !== void 0 && (T(l), Object.values(l).filter((p) => p !== void 0).length === 0 && delete c.dysfonctionnement), Object.values(c).filter((p) => p !== void 0).length === 0 && delete e.miseAuPoint; } } function I(e) { b(e, "parDelegation"), _(e, "numPlace"); } function X(e) { f(e); } function z(e) { f(e); } export { $ as cleanActeur, Y as cleanAmendement, z as cleanCompteRendu, w as cleanDocumentOrDivision, B as cleanDossierParlementaire, k as cleanOrgane, X as cleanQuestion, U as cleanReunion, W as cleanScrutin };