UNPKG

@tricoteuses/assemblee

Version:

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

155 lines (154 loc) 4.48 kB
import c from "node:assert"; import { b as d } from "./amendements-40Z7OJLT.js"; const b = { false: !1, true: !0 }, C = "http://schemas.assemblee-nationale.fr/referentiel", x = "http://www.w3.org/2001/XMLSchema-instance"; function A(e, i) { const t = e[i]; if (t == null) { delete e[i]; return; } const r = b[t]; return c.notStrictEqual( r, void 0, `Invalid boolean value: ${i} = ${t}` ), e[i] = r, r; } function _(e, i) { const t = e[i]; if (t == null) { delete e[i]; return; } const r = Number.parseInt(t); return c( !Number.isNaN(r), `Invalid number value: ${i} = ${t}` ), e[i] = r, r; } function a(e) { const i = e["@xmlns"] ?? e.xmlns; i !== void 0 && (c.strictEqual(i, C), delete e["@xmlns"], delete e.xmlns), e["@xmlns:xsi"] === x && delete e["@xmlns:xsi"]; for (const t in e) { const r = e[t]; if (r === null) { delete e[t]; continue; } r !== void 0 && (r["@xsi:nil"] === "true" || Array.isArray(r) && r.length === 0 || !Array.isArray(r) && r.constructor === Object && Object.keys(r).length === 0) && delete e[t]; } } function S(e) { a(e); const i = e.signataires; { a(i); const s = i.auteur; if (a(s), i.cosignataires !== void 0) { const o = i.cosignataires.acteurRef; Array.isArray(o) ? i.cosignatairesRefs = o : (c(o), i.cosignatairesRefs = [o]), delete i.cosignataires; } let n = i.libelle; n !== void 0 && (n = n.split(" ").filter(Boolean).join(" "), n ? i.libelle = n : delete i.libelle); } const t = e.pointeurFragmentTexte; { a(t); const s = t.division; if (s !== void 0) { a(s); let o = s.avant_A_Apres; o !== void 0 && (delete s.avant_A_Apres, o === "Après" && (o = d.Apres), s.avantAApres = o); } const n = t.amendementStandard; if (n !== void 0) { a(n); const o = n.alinea; if (o !== void 0) { a(o); let f = o.avant_A_Apres; f !== void 0 && (delete o.avant_A_Apres, f === "Après" ? f = d.Apres : [d.A, d.Apres, d.Avant].includes( f ) || (f = d.A), o.avantAApres = f), t.alinea = o; } delete t.amendementStandard; } } const r = e.corps; if (r !== void 0) { a(r); const s = r.contenuAuteur; if (s !== void 0) { a(s); const n = s.avantAppel; n !== void 0 && (a(n), v(n.dispositifAmdtCreditPLF, { rectificatif: !1 }), v(n.dispositifAmdtCreditPLFR, { rectificatif: !0 }), Object.keys(n).length === 0 && delete s.avantAppel), c.strictEqual(s.annexeExposeSommaire, void 0), v(s.dispositifAmdtCreditPLF, { rectificatif: !1 }), v(s.dispositifAmdtCreditPLFR, { rectificatif: !0 }); } } const l = e.cycleDeVie; if (l !== void 0) { a(l); const s = l.etatDesTraitements; { a(s); const n = s.etat; a(n); const o = s.sousEtat; o !== void 0 && a(o); } } if (e.representations !== void 0) { const s = e.representations.representation; c(!Array.isArray(s)), e.representation = s, delete e.representations; { a(s), c.strictEqual(s.repSource, void 0), c.strictEqual(s.offset, void 0), c.strictEqual(s.dateDispoRepresentation, void 0); const n = s.statutRepresentation; A(n, "canonique"), A(n, "enregistrement"), A(n, "officielle"), A(n, "transcription"), A(n, "verbatim"); } } const u = e.loiReference; u !== void 0 && a(u); const p = e.discussionCommune; p !== void 0 && a(p); const g = e.discussionIdentique; g !== void 0 && a(g); } function v(e, { rectificatif: i }) { if (e !== void 0) { const t = e.listeProgrammes?.programme; if (t !== void 0) { Array.isArray(t) ? e.listeProgrammes = t : (c(t), e.listeProgrammes = [t]); for (const r of e.listeProgrammes) if (a(r), r.lignesCredits !== void 0) { let l = r.lignesCredits.ligneCredit; if (l === void 0 ? delete r.lignesCredits : (Array.isArray(l) || (c(l), l = [l]), r.lignesCredits = l), l !== void 0) for (const u of l) i ? m(u) : a(u); } } } } function m(e) { if (a(e), e.lignesCredits !== void 0) { let i = e.lignesCredits.ligneCredit; if (i === void 0 ? delete e.lignesCredits : (Array.isArray(i) || (c(i), i = [i]), e.lignesCredits = i), i !== void 0) for (const t of i) m(t); } } export { A as a, _ as b, a as c, S as d };