@tricoteuses/assemblee 1.10.5 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -1
- package/lib/amendements-CN7bRFdP.js +259 -0
- package/lib/amendements-CN7bRFdP.js.map +1 -0
- package/lib/amendements-Cg1lyCBp.js +735 -0
- package/lib/amendements-Cg1lyCBp.js.map +1 -0
- package/lib/api.d.ts +1 -0
- package/lib/api.d.ts.map +1 -0
- package/lib/cleaners/actes_legislatifs.d.ts +1 -0
- package/lib/cleaners/actes_legislatifs.d.ts.map +1 -0
- package/lib/cleaners/acteurs.d.ts +1 -0
- package/lib/cleaners/acteurs.d.ts.map +1 -0
- package/lib/cleaners/amendements.d.ts +1 -0
- package/lib/cleaners/amendements.d.ts.map +1 -0
- package/lib/cleaners/debats.d.ts +1 -0
- package/lib/cleaners/debats.d.ts.map +1 -0
- package/lib/cleaners/documents.d.ts +1 -0
- package/lib/cleaners/documents.d.ts.map +1 -0
- package/lib/cleaners/dossiers_legislatifs.d.ts +1 -0
- package/lib/cleaners/dossiers_legislatifs.d.ts.map +1 -0
- package/lib/cleaners/index.d.ts +10 -9
- package/lib/cleaners/index.d.ts.map +1 -0
- package/lib/cleaners/organes.d.ts +1 -0
- package/lib/cleaners/organes.d.ts.map +1 -0
- package/lib/cleaners/questions.d.ts +1 -0
- package/lib/cleaners/questions.d.ts.map +1 -0
- package/lib/cleaners/reunions.d.ts +1 -0
- package/lib/cleaners/reunions.d.ts.map +1 -0
- package/lib/cleaners/scrutins.d.ts +1 -0
- package/lib/cleaners/scrutins.d.ts.map +1 -0
- package/lib/cleaners/xml.d.ts +1 -0
- package/lib/cleaners/xml.d.ts.map +1 -0
- package/lib/cleaners.js +1138 -0
- package/lib/cleaners.js.map +1 -0
- package/lib/datasets.d.ts +4 -3
- package/lib/datasets.d.ts.map +1 -0
- package/lib/dates.d.ts +1 -0
- package/lib/dates.d.ts.map +1 -0
- package/lib/debats-BwZYgzXe.js +3978 -0
- package/lib/debats-BwZYgzXe.js.map +1 -0
- package/lib/dossiers_legislatifs.d.ts +3 -2
- package/lib/dossiers_legislatifs.d.ts.map +1 -0
- package/lib/file_systems.d.ts +1 -0
- package/lib/file_systems.d.ts.map +1 -0
- package/lib/git.d.ts +1 -0
- package/lib/git.d.ts.map +1 -0
- package/lib/index.d.ts +18 -22
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +1916 -285
- package/lib/index.js.map +1 -0
- package/lib/inserters.d.ts +6 -5
- package/lib/inserters.d.ts.map +1 -0
- package/lib/loaders.d.ts +13 -12
- package/lib/loaders.d.ts.map +1 -0
- package/lib/loaders.js +812 -1516
- package/lib/loaders.js.map +1 -0
- package/lib/logger.d.ts +1 -0
- package/lib/logger.d.ts.map +1 -0
- package/lib/organes.d.ts +2 -1
- package/lib/organes.d.ts.map +1 -0
- package/lib/parse-CzW8NHW5.js +2850 -0
- package/lib/parse-CzW8NHW5.js.map +1 -0
- package/lib/parsers/index.d.ts +3 -3
- package/lib/parsers/index.d.ts.map +1 -0
- package/lib/parsers/plf.d.ts +2 -0
- package/lib/parsers/plf.d.ts.map +1 -0
- package/lib/parsers/recherche_amendements.d.ts +3 -2
- package/lib/parsers/recherche_amendements.d.ts.map +1 -0
- package/lib/parsers/textes_lois.d.ts +2 -23
- package/lib/parsers/textes_lois.d.ts.map +1 -0
- package/lib/parsers.js +393 -0
- package/lib/parsers.js.map +1 -0
- package/lib/raw_types/acteurs_et_organes.d.ts +1 -0
- package/lib/raw_types/acteurs_et_organes.d.ts.map +1 -0
- package/lib/raw_types/agendas.d.ts +1 -0
- package/lib/raw_types/agendas.d.ts.map +1 -0
- package/lib/raw_types/amendements.d.ts +1 -0
- package/lib/raw_types/amendements.d.ts.map +1 -0
- package/lib/raw_types/debats.d.ts +3 -2
- package/lib/raw_types/debats.d.ts.map +1 -0
- package/lib/raw_types/dossiers_legislatifs.d.ts +2 -1
- package/lib/raw_types/dossiers_legislatifs.d.ts.map +1 -0
- package/lib/raw_types/questions.d.ts +1 -0
- package/lib/raw_types/questions.d.ts.map +1 -0
- package/lib/raw_types/scrutins.d.ts +1 -0
- package/lib/raw_types/scrutins.d.ts.map +1 -0
- package/lib/schemas/acteurs_et_organes.d.json +982 -0
- package/lib/schemas/acteurs_et_organes.json +1166 -0
- package/lib/schemas/agendas.d.json +1561 -0
- package/lib/schemas/agendas.json +1745 -0
- package/lib/schemas/amendements.d.json +1901 -0
- package/lib/schemas/amendements.json +2085 -0
- package/lib/schemas/debats.d.json +623 -0
- package/lib/schemas/debats.json +842 -0
- package/lib/schemas/dossiers_legislatifs.d.json +3690 -0
- package/lib/schemas/dossiers_legislatifs.json +3874 -0
- package/lib/schemas/legislatures.d.json +17 -0
- package/lib/schemas/legislatures.json +17 -0
- package/lib/schemas/questions.d.json +520 -0
- package/lib/schemas/questions.json +704 -0
- package/lib/schemas/scrutins.d.json +517 -0
- package/lib/schemas/scrutins.json +701 -0
- package/lib/scripts/add_links_to_documents.d.ts +2 -0
- package/lib/scripts/add_links_to_documents.d.ts.map +1 -0
- package/lib/scripts/clean_reorganized_data.d.ts +1 -0
- package/lib/scripts/clean_reorganized_data.d.ts.map +1 -0
- package/lib/scripts/copy-schemas.d.ts +2 -0
- package/lib/scripts/copy-schemas.d.ts.map +1 -0
- package/lib/scripts/diff_amendements.d.ts +1 -0
- package/lib/scripts/diff_amendements.d.ts.map +1 -0
- package/lib/scripts/document_dossiers_legislatifs.d.ts +1 -0
- package/lib/scripts/document_dossiers_legislatifs.d.ts.map +1 -0
- package/lib/scripts/generate-json-schemas.d.ts +2 -0
- package/lib/scripts/generate-json-schemas.d.ts.map +1 -0
- package/lib/scripts/get_today_reunions.d.ts +1 -0
- package/lib/scripts/get_today_reunions.d.ts.map +1 -0
- package/lib/scripts/merge_scrutins.d.ts +1 -0
- package/lib/scripts/merge_scrutins.d.ts.map +1 -0
- package/lib/scripts/process_open_dataset.d.ts +1 -0
- package/lib/scripts/process_open_dataset.d.ts.map +1 -0
- package/lib/scripts/raw_types_from_amendements.d.ts +1 -0
- package/lib/scripts/raw_types_from_amendements.d.ts.map +1 -0
- package/lib/scripts/reorganize_data.d.ts +1 -0
- package/lib/scripts/reorganize_data.d.ts.map +1 -0
- package/lib/scripts/retrieve_deputes_photos.d.ts +2 -1
- package/lib/scripts/retrieve_deputes_photos.d.ts.map +1 -0
- package/lib/scripts/retrieve_documents.d.ts +1 -0
- package/lib/scripts/retrieve_documents.d.ts.map +1 -0
- package/lib/scripts/retrieve_open_data.d.ts +1 -0
- package/lib/scripts/retrieve_open_data.d.ts.map +1 -0
- package/lib/scripts/retrieve_pending_amendments.d.ts +1 -0
- package/lib/scripts/retrieve_pending_amendments.d.ts.map +1 -0
- package/lib/scripts/retrieve_senateurs_photos.d.ts +1 -0
- package/lib/scripts/retrieve_senateurs_photos.d.ts.map +1 -0
- package/lib/scripts/shared/cli_helpers.d.ts +1 -0
- package/lib/scripts/shared/cli_helpers.d.ts.map +1 -0
- package/lib/scripts/test_iter_load.d.ts +1 -0
- package/lib/scripts/test_iter_load.d.ts.map +1 -0
- package/lib/scripts/test_load.d.ts +1 -0
- package/lib/scripts/test_load.d.ts.map +1 -0
- package/lib/scripts/test_load_big_files.d.ts +1 -0
- package/lib/scripts/test_load_big_files.d.ts.map +1 -0
- package/lib/scripts/validate_json.d.ts +1 -0
- package/lib/scripts/validate_json.d.ts.map +1 -0
- package/lib/shared_types/codes_actes.d.ts +1 -0
- package/lib/shared_types/codes_actes.d.ts.map +1 -0
- package/lib/strings.d.ts +1 -0
- package/lib/strings.d.ts.map +1 -0
- package/lib/types/acteurs_et_organes.d.ts +341 -0
- package/lib/types/acteurs_et_organes.d.ts.map +1 -0
- package/lib/types/agendas.d.ts +237 -10
- package/lib/types/agendas.d.ts.map +1 -0
- package/lib/types/amendements.d.ts +277 -1
- package/lib/types/amendements.d.ts.map +1 -0
- package/lib/types/debats.d.ts +53 -2
- package/lib/types/debats.d.ts.map +1 -0
- package/lib/types/dossiers_legislatifs.d.ts +404 -9
- package/lib/types/dossiers_legislatifs.d.ts.map +1 -0
- package/lib/types/legislatures.d.ts +1 -0
- package/lib/types/legislatures.d.ts.map +1 -0
- package/lib/types/questions.d.ts +100 -2
- package/lib/types/questions.d.ts.map +1 -0
- package/lib/types/scrutins.d.ts +102 -0
- package/lib/types/scrutins.d.ts.map +1 -0
- package/lib/urls.d.ts +3 -2
- package/lib/urls.d.ts.map +1 -0
- package/package.json +31 -95
- package/lib/api.js +0 -52
- package/lib/api.mjs +0 -45
- package/lib/bugs/acteur-00010/plugin.test.d.ts +0 -1
- package/lib/bugs/acteur-00010/plugin.test.js +0 -90
- package/lib/bugs/acteur-00010/plugin.test.mjs +0 -33
- package/lib/bugs/acteur-00010.d.ts +0 -7
- package/lib/bugs/acteur-00010.js +0 -116
- package/lib/bugs/acteur-00010.mjs +0 -26
- package/lib/bugs/agenda-00002/plugin.test.d.ts +0 -1
- package/lib/bugs/agenda-00002/plugin.test.js +0 -124
- package/lib/bugs/agenda-00002/plugin.test.mjs +0 -50
- package/lib/bugs/agenda-00002.d.ts +0 -15
- package/lib/bugs/agenda-00002.js +0 -406
- package/lib/bugs/agenda-00002.mjs +0 -172
- package/lib/bugs/agenda-00008/plugin.test.d.ts +0 -1
- package/lib/bugs/agenda-00008/plugin.test.js +0 -92
- package/lib/bugs/agenda-00008/plugin.test.mjs +0 -31
- package/lib/bugs/agenda-00008.d.ts +0 -7
- package/lib/bugs/agenda-00008.js +0 -123
- package/lib/bugs/agenda-00008.mjs +0 -26
- package/lib/bugs/agenda-00011/plugin.test.d.ts +0 -1
- package/lib/bugs/agenda-00011/plugin.test.js +0 -263
- package/lib/bugs/agenda-00011/plugin.test.mjs +0 -152
- package/lib/bugs/agenda-00011.d.ts +0 -16
- package/lib/bugs/agenda-00011.js +0 -333
- package/lib/bugs/agenda-00011.mjs +0 -125
- package/lib/bugs.d.ts +0 -21
- package/lib/bugs.js +0 -452
- package/lib/bugs.mjs +0 -70
- package/lib/cleaners/actes_legislatifs.js +0 -315
- package/lib/cleaners/actes_legislatifs.mjs +0 -253
- package/lib/cleaners/acteurs.js +0 -265
- package/lib/cleaners/acteurs.mjs +0 -180
- package/lib/cleaners/amendements.js +0 -294
- package/lib/cleaners/amendements.mjs +0 -227
- package/lib/cleaners/debats.js +0 -12
- package/lib/cleaners/debats.mjs +0 -5
- package/lib/cleaners/documents.js +0 -205
- package/lib/cleaners/documents.mjs +0 -133
- package/lib/cleaners/dossiers_legislatifs.js +0 -131
- package/lib/cleaners/dossiers_legislatifs.mjs +0 -70
- package/lib/cleaners/index.js +0 -70
- package/lib/cleaners/index.mjs +0 -10
- package/lib/cleaners/organes.js +0 -65
- package/lib/cleaners/organes.mjs +0 -48
- package/lib/cleaners/questions.js +0 -12
- package/lib/cleaners/questions.mjs +0 -5
- package/lib/cleaners/reunions.js +0 -312
- package/lib/cleaners/reunions.mjs +0 -255
- package/lib/cleaners/scrutins.js +0 -340
- package/lib/cleaners/scrutins.mjs +0 -221
- package/lib/cleaners/xml.js +0 -74
- package/lib/cleaners/xml.mjs +0 -59
- package/lib/datasets.js +0 -837
- package/lib/datasets.mjs +0 -755
- package/lib/dates.js +0 -124
- package/lib/dates.mjs +0 -100
- package/lib/dossiers_legislatifs.js +0 -346
- package/lib/dossiers_legislatifs.mjs +0 -208
- package/lib/file_systems.js +0 -162
- package/lib/file_systems.mjs +0 -62
- package/lib/git.js +0 -223
- package/lib/git.mjs +0 -151
- package/lib/index.mjs +0 -17
- package/lib/inserters.js +0 -521
- package/lib/inserters.mjs +0 -337
- package/lib/loaders.mjs +0 -886
- package/lib/logger.js +0 -35
- package/lib/logger.mjs +0 -26
- package/lib/organes.js +0 -22
- package/lib/organes.mjs +0 -15
- package/lib/parsers/documents.d.ts +0 -62
- package/lib/parsers/documents.js +0 -453
- package/lib/parsers/documents.mjs +0 -370
- package/lib/parsers/index.js +0 -40
- package/lib/parsers/index.mjs +0 -4
- package/lib/parsers/recherche_amendements.js +0 -403
- package/lib/parsers/recherche_amendements.mjs +0 -167
- package/lib/parsers/textes_lois.js +0 -307
- package/lib/parsers/textes_lois.mjs +0 -264
- package/lib/raw_types/acteurs_et_organes.js +0 -1215
- package/lib/raw_types/acteurs_et_organes.mjs +0 -1148
- package/lib/raw_types/agendas.js +0 -777
- package/lib/raw_types/agendas.mjs +0 -724
- package/lib/raw_types/amendements.js +0 -1052
- package/lib/raw_types/amendements.mjs +0 -993
- package/lib/raw_types/debats.js +0 -630
- package/lib/raw_types/debats.mjs +0 -573
- package/lib/raw_types/dossiers_legislatifs.js +0 -1529
- package/lib/raw_types/dossiers_legislatifs.mjs +0 -1471
- package/lib/raw_types/questions.js +0 -469
- package/lib/raw_types/questions.mjs +0 -416
- package/lib/raw_types/scrutins.js +0 -651
- package/lib/raw_types/scrutins.mjs +0 -598
- package/lib/schemas/acteur/Acteur.json +0 -56
- package/lib/schemas/acteur/AdresseElectronique.json +0 -52
- package/lib/schemas/acteur/AdressePostale.json +0 -75
- package/lib/schemas/acteur/Civ.json +0 -14
- package/lib/schemas/acteur/Collaborateur.json +0 -29
- package/lib/schemas/acteur/EtatCivil.json +0 -51
- package/lib/schemas/acteur/Ident.json +0 -40
- package/lib/schemas/acteur/Lieu.json +0 -66
- package/lib/schemas/acteur/Mandat.json +0 -192
- package/lib/schemas/acteur/Profession.json +0 -46
- package/lib/schemas/agenda/Agenda.json +0 -318
- package/lib/schemas/agenda/CycleDeVie.json +0 -45
- package/lib/schemas/agenda/PointOdj.json +0 -82
- package/lib/schemas/amendement/Amendement.json +0 -246
- package/lib/schemas/amendement/Diff.json +0 -25
- package/lib/schemas/amendement/DispositifAmdtCredit.json +0 -85
- package/lib/schemas/amendement/Identifiant.json +0 -62
- package/lib/schemas/amendement/PointeurFragmentTexte.json +0 -127
- package/lib/schemas/amendement/Representation.json +0 -67
- package/lib/schemas/amendement/Total.json +0 -26
- package/lib/schemas/converted_from_type/acteurs_et_organes.json +0 -666
- package/lib/schemas/converted_from_type/agendas.json +0 -1100
- package/lib/schemas/converted_from_type/amendements.json +0 -3191
- package/lib/schemas/converted_from_type/debats.json +0 -682
- package/lib/schemas/converted_from_type/deputes.json +0 -26
- package/lib/schemas/converted_from_type/dossiers_legislatifs.json +0 -2918
- package/lib/schemas/converted_from_type/legislatures.json +0 -16
- package/lib/schemas/converted_from_type/questions.json +0 -328
- package/lib/schemas/converted_from_type/scrutins.json +0 -393
- package/lib/schemas/debat/Contenu.json +0 -75
- package/lib/schemas/debat/Debat.json +0 -40
- package/lib/schemas/debat/Metadonnees.json +0 -75
- package/lib/schemas/debat/Orateur.json +0 -60
- package/lib/schemas/debat/Point.json +0 -169
- package/lib/schemas/debat/Sommaire.json +0 -71
- package/lib/schemas/debat/SommaireElement.json +0 -108
- package/lib/schemas/debat/Texte.json +0 -34
- package/lib/schemas/document/CodeLibelle.json +0 -25
- package/lib/schemas/document/Document.json +0 -385
- package/lib/schemas/document/Indexation.json +0 -38
- package/lib/schemas/dossier/ActeLegislatif.json +0 -211
- package/lib/schemas/dossier/ActeLegislatifBase.json +0 -62
- package/lib/schemas/dossier/Agenda.json +0 -23
- package/lib/schemas/dossier/ConseilConstitutionnel.json +0 -35
- package/lib/schemas/dossier/Decision.json +0 -25
- package/lib/schemas/dossier/Dossier.json +0 -124
- package/lib/schemas/dossier/EtudeImpact.json +0 -29
- package/lib/schemas/dossier/EtudePlf.json +0 -105
- package/lib/schemas/dossier/Europe.json +0 -42
- package/lib/schemas/dossier/FamCodeLibelle.json +0 -25
- package/lib/schemas/dossier/InfoJO.json +0 -23
- package/lib/schemas/dossier/Initiateur.json +0 -36
- package/lib/schemas/dossier/Motion.json +0 -27
- package/lib/schemas/dossier/Promulgation.json +0 -62
- package/lib/schemas/dossier/Rapporteur.json +0 -36
- package/lib/schemas/dossier/Texte.json +0 -47
- package/lib/schemas/organe/CodeTypeOrgane.json +0 -43
- package/lib/schemas/organe/Organe.json +0 -136
- package/lib/schemas/organe/ViMoDe.json +0 -28
- package/lib/schemas/question/Auteur.json +0 -58
- package/lib/schemas/question/Cloture.json +0 -28
- package/lib/schemas/question/InfoJO.json +0 -40
- package/lib/schemas/question/MinAttribElement.json +0 -30
- package/lib/schemas/question/Question.json +0 -172
- package/lib/schemas/question/Renouvellement.json +0 -17
- package/lib/schemas/question/Signalement.json +0 -21
- package/lib/schemas/question/Texte.json +0 -24
- package/lib/schemas/scrutin/DecompteVoix.json +0 -35
- package/lib/schemas/scrutin/Dysfonctionnement.json +0 -50
- package/lib/schemas/scrutin/MiseAuPoint.json +0 -53
- package/lib/schemas/scrutin/OrganeVotant.json +0 -88
- package/lib/schemas/scrutin/Scrutin.json +0 -187
- package/lib/schemas/scrutin/Votant.json +0 -37
- package/lib/scripts/bugs_helper.d.ts +0 -13
- package/lib/scripts/bugs_helper.js +0 -595
- package/lib/scripts/bugs_helper.mjs +0 -251
- package/lib/scripts/clean_reorganized_data.js +0 -613
- package/lib/scripts/clean_reorganized_data.mjs +0 -276
- package/lib/scripts/diff_amendements.js +0 -249
- package/lib/scripts/diff_amendements.mjs +0 -202
- package/lib/scripts/document_dossiers_legislatifs.js +0 -655
- package/lib/scripts/document_dossiers_legislatifs.mjs +0 -414
- package/lib/scripts/get_today_reunions.js +0 -37
- package/lib/scripts/get_today_reunions.mjs +0 -31
- package/lib/scripts/merge_scrutins.js +0 -97
- package/lib/scripts/merge_scrutins.mjs +0 -47
- package/lib/scripts/parse_textes_lois.d.ts +0 -1
- package/lib/scripts/parse_textes_lois.js +0 -171
- package/lib/scripts/parse_textes_lois.mjs +0 -140
- package/lib/scripts/process_open_dataset.js +0 -301
- package/lib/scripts/process_open_dataset.mjs +0 -134
- package/lib/scripts/raw_types_from_amendements.js +0 -135
- package/lib/scripts/raw_types_from_amendements.mjs +0 -134
- package/lib/scripts/reorganize_data.js +0 -805
- package/lib/scripts/reorganize_data.mjs +0 -517
- package/lib/scripts/retrieve_deputes_photos.js +0 -310
- package/lib/scripts/retrieve_deputes_photos.mjs +0 -158
- package/lib/scripts/retrieve_documents.js +0 -547
- package/lib/scripts/retrieve_documents.mjs +0 -242
- package/lib/scripts/retrieve_open_data.js +0 -107
- package/lib/scripts/retrieve_open_data.mjs +0 -26
- package/lib/scripts/retrieve_pending_amendments.js +0 -206
- package/lib/scripts/retrieve_pending_amendments.mjs +0 -57
- package/lib/scripts/retrieve_senateurs_photos.js +0 -234
- package/lib/scripts/retrieve_senateurs_photos.mjs +0 -116
- package/lib/scripts/retrieve_textes_lois.d.ts +0 -1
- package/lib/scripts/retrieve_textes_lois.js +0 -240
- package/lib/scripts/retrieve_textes_lois.mjs +0 -85
- package/lib/scripts/shared/cli_helpers.js +0 -89
- package/lib/scripts/shared/cli_helpers.mjs +0 -81
- package/lib/scripts/test_iter_load.js +0 -155
- package/lib/scripts/test_iter_load.mjs +0 -72
- package/lib/scripts/test_load.js +0 -26
- package/lib/scripts/test_load.mjs +0 -16
- package/lib/scripts/test_load_big_files.js +0 -26
- package/lib/scripts/test_load_big_files.mjs +0 -16
- package/lib/scripts/validate_json.js +0 -353
- package/lib/scripts/validate_json.mjs +0 -184
- package/lib/shared_types/codes_actes.js +0 -231
- package/lib/shared_types/codes_actes.mjs +0 -224
- package/lib/strings.js +0 -16
- package/lib/strings.mjs +0 -7
- package/lib/types/acteurs_et_organes.js +0 -965
- package/lib/types/acteurs_et_organes.mjs +0 -906
- package/lib/types/agendas.js +0 -628
- package/lib/types/agendas.mjs +0 -575
- package/lib/types/amendements.js +0 -899
- package/lib/types/amendements.mjs +0 -842
- package/lib/types/debats.js +0 -619
- package/lib/types/debats.mjs +0 -562
- package/lib/types/dossiers_legislatifs.js +0 -1188
- package/lib/types/dossiers_legislatifs.mjs +0 -1130
- package/lib/types/legislatures.js +0 -17
- package/lib/types/legislatures.mjs +0 -10
- package/lib/types/questions.js +0 -454
- package/lib/types/questions.mjs +0 -401
- package/lib/types/scrutins.js +0 -556
- package/lib/types/scrutins.mjs +0 -503
- package/lib/urls.js +0 -325
- package/lib/urls.mjs +0 -258
package/README.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
## _Retrieve, clean up & handle French Assemblée nationale's open data_
|
|
4
4
|
|
|
5
|
+
_Tricoteuses Légifrance_ is free and open source software.
|
|
6
|
+
|
|
7
|
+
- [software repository](https://git.en-root.org/tricoteuses/tricoteuses-assemblee)
|
|
8
|
+
- [GNU Affero General Public License version 3 or greater](https://git.en-root.org/tricoteuses/tricoteuses-assemblee/-/tree/master/LICENSE.md)
|
|
9
|
+
|
|
10
|
+
[Architecture](doc/architecture.md)
|
|
11
|
+
|
|
5
12
|
## Requirements
|
|
6
13
|
|
|
7
14
|
- Node >= 18
|
|
@@ -109,4 +116,4 @@ for (const { acteur } of iterLoadAssembleeActeurs("../assemblee-data", 17)) {
|
|
|
109
116
|
|
|
110
117
|
## Generating schemas and documentation (for contributors only)
|
|
111
118
|
|
|
112
|
-
View instructions [here](https://git.en-root.org/tricoteuses/tricoteuses-assemblee/-/blob/master/src/types)
|
|
119
|
+
View instructions [here](https://git.en-root.org/tricoteuses/tricoteuses-assemblee/-/blob/master/src/types)
|
|
@@ -0,0 +1,259 @@
|
|
|
1
|
+
import assert from "node:assert";
|
|
2
|
+
import { A as AvantAApres } from "./amendements-Cg1lyCBp.js";
|
|
3
|
+
const BOOLEAN_MAP = {
|
|
4
|
+
false: false,
|
|
5
|
+
true: true
|
|
6
|
+
};
|
|
7
|
+
const XML_NAMESPACE = "http://schemas.assemblee-nationale.fr/referentiel";
|
|
8
|
+
const XSI_NAMESPACE = "http://www.w3.org/2001/XMLSchema-instance";
|
|
9
|
+
function cleanBooleanAttribute(o, key) {
|
|
10
|
+
const stringValue = o[key];
|
|
11
|
+
if (stringValue === void 0 || stringValue === null) {
|
|
12
|
+
delete o[key];
|
|
13
|
+
return void 0;
|
|
14
|
+
}
|
|
15
|
+
const booleanValue = BOOLEAN_MAP[stringValue];
|
|
16
|
+
assert.notStrictEqual(booleanValue, void 0, `Invalid boolean value: ${key} = ${stringValue}`);
|
|
17
|
+
o[key] = booleanValue;
|
|
18
|
+
return booleanValue;
|
|
19
|
+
}
|
|
20
|
+
function cleanIntegerAttribute(o, key) {
|
|
21
|
+
const stringValue = o[key];
|
|
22
|
+
if (stringValue === void 0 || stringValue === null) {
|
|
23
|
+
delete o[key];
|
|
24
|
+
return void 0;
|
|
25
|
+
}
|
|
26
|
+
const integerValue = Number.parseInt(stringValue);
|
|
27
|
+
assert(!Number.isNaN(integerValue), `Invalid number value: ${key} = ${stringValue}`);
|
|
28
|
+
o[key] = integerValue;
|
|
29
|
+
return integerValue;
|
|
30
|
+
}
|
|
31
|
+
function cleanXmlArtefacts(o) {
|
|
32
|
+
const xmlns = o["@xmlns"] ?? o["xmlns"];
|
|
33
|
+
if (xmlns !== void 0) {
|
|
34
|
+
assert.strictEqual(xmlns, XML_NAMESPACE);
|
|
35
|
+
delete o["@xmlns"];
|
|
36
|
+
delete o["xmlns"];
|
|
37
|
+
}
|
|
38
|
+
if (o["@xmlns:xsi"] === XSI_NAMESPACE) {
|
|
39
|
+
delete o["@xmlns:xsi"];
|
|
40
|
+
}
|
|
41
|
+
for (const key in o) {
|
|
42
|
+
const value = o[key];
|
|
43
|
+
if (value === null) {
|
|
44
|
+
delete o[key];
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
if (value === void 0)
|
|
48
|
+
continue;
|
|
49
|
+
if (value["@xsi:nil"] === "true" || Array.isArray(value) && value.length === 0 || !Array.isArray(value) && value.constructor === Object && Object.keys(value).length === 0) {
|
|
50
|
+
delete o[key];
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
function cleanAmendement(amendement) {
|
|
55
|
+
cleanXmlArtefacts(amendement);
|
|
56
|
+
const signataires = amendement.signataires;
|
|
57
|
+
{
|
|
58
|
+
cleanXmlArtefacts(signataires);
|
|
59
|
+
const auteur = signataires.auteur;
|
|
60
|
+
{
|
|
61
|
+
cleanXmlArtefacts(auteur);
|
|
62
|
+
}
|
|
63
|
+
if (signataires.cosignataires !== void 0) {
|
|
64
|
+
const acteurRef = signataires.cosignataires.acteurRef;
|
|
65
|
+
if (Array.isArray(acteurRef)) {
|
|
66
|
+
signataires.cosignatairesRefs = acteurRef;
|
|
67
|
+
} else {
|
|
68
|
+
assert(acteurRef);
|
|
69
|
+
signataires.cosignatairesRefs = [acteurRef];
|
|
70
|
+
}
|
|
71
|
+
delete signataires.cosignataires;
|
|
72
|
+
}
|
|
73
|
+
let libelle = signataires.libelle;
|
|
74
|
+
if (libelle !== void 0) {
|
|
75
|
+
libelle = libelle.split(" ").filter(Boolean).join(" ");
|
|
76
|
+
if (libelle) {
|
|
77
|
+
signataires.libelle = libelle;
|
|
78
|
+
} else {
|
|
79
|
+
delete signataires.libelle;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
const pointeurFragmentTexte = amendement.pointeurFragmentTexte;
|
|
84
|
+
{
|
|
85
|
+
cleanXmlArtefacts(pointeurFragmentTexte);
|
|
86
|
+
const division = pointeurFragmentTexte.division;
|
|
87
|
+
if (division !== void 0) {
|
|
88
|
+
cleanXmlArtefacts(division);
|
|
89
|
+
let avantAApres = division.avant_A_Apres;
|
|
90
|
+
if (avantAApres !== void 0) {
|
|
91
|
+
delete division.avant_A_Apres;
|
|
92
|
+
if (avantAApres === "Après") {
|
|
93
|
+
avantAApres = AvantAApres.Apres;
|
|
94
|
+
}
|
|
95
|
+
division.avantAApres = avantAApres;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
const amendementStandard = pointeurFragmentTexte.amendementStandard;
|
|
99
|
+
if (amendementStandard !== void 0) {
|
|
100
|
+
cleanXmlArtefacts(amendementStandard);
|
|
101
|
+
const alinea = amendementStandard.alinea;
|
|
102
|
+
if (alinea !== void 0) {
|
|
103
|
+
cleanXmlArtefacts(alinea);
|
|
104
|
+
let avantAApres = alinea.avant_A_Apres;
|
|
105
|
+
if (avantAApres !== void 0) {
|
|
106
|
+
delete alinea.avant_A_Apres;
|
|
107
|
+
if (avantAApres === "Après") {
|
|
108
|
+
avantAApres = AvantAApres.Apres;
|
|
109
|
+
} else if (![AvantAApres.A, AvantAApres.Apres, AvantAApres.Avant].includes(avantAApres)) {
|
|
110
|
+
avantAApres = AvantAApres.A;
|
|
111
|
+
}
|
|
112
|
+
alinea.avantAApres = avantAApres;
|
|
113
|
+
}
|
|
114
|
+
pointeurFragmentTexte.alinea = alinea;
|
|
115
|
+
}
|
|
116
|
+
delete pointeurFragmentTexte.amendementStandard;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
const corps = amendement.corps;
|
|
120
|
+
if (corps !== void 0) {
|
|
121
|
+
cleanXmlArtefacts(corps);
|
|
122
|
+
const contenuAuteur = corps.contenuAuteur;
|
|
123
|
+
if (contenuAuteur !== void 0) {
|
|
124
|
+
cleanXmlArtefacts(contenuAuteur);
|
|
125
|
+
const avantAppel = contenuAuteur.avantAppel;
|
|
126
|
+
if (avantAppel !== void 0) {
|
|
127
|
+
cleanXmlArtefacts(avantAppel);
|
|
128
|
+
cleanDispositifAmdtCreditPLF(avantAppel.dispositifAmdtCreditPLF, {
|
|
129
|
+
rectificatif: false
|
|
130
|
+
});
|
|
131
|
+
cleanDispositifAmdtCreditPLF(avantAppel.dispositifAmdtCreditPLFR, {
|
|
132
|
+
rectificatif: true
|
|
133
|
+
});
|
|
134
|
+
if (Object.keys(avantAppel).length === 0) {
|
|
135
|
+
delete contenuAuteur.avantAppel;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
assert.strictEqual(contenuAuteur.annexeExposeSommaire, void 0);
|
|
139
|
+
cleanDispositifAmdtCreditPLF(contenuAuteur.dispositifAmdtCreditPLF, {
|
|
140
|
+
rectificatif: false
|
|
141
|
+
});
|
|
142
|
+
cleanDispositifAmdtCreditPLF(contenuAuteur.dispositifAmdtCreditPLFR, {
|
|
143
|
+
rectificatif: true
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
const cycleDeVie = amendement.cycleDeVie;
|
|
148
|
+
if (cycleDeVie !== void 0) {
|
|
149
|
+
cleanXmlArtefacts(cycleDeVie);
|
|
150
|
+
const etatDesTraitements = cycleDeVie.etatDesTraitements;
|
|
151
|
+
{
|
|
152
|
+
cleanXmlArtefacts(etatDesTraitements);
|
|
153
|
+
const etat = etatDesTraitements.etat;
|
|
154
|
+
{
|
|
155
|
+
cleanXmlArtefacts(etat);
|
|
156
|
+
}
|
|
157
|
+
const sousEtat = etatDesTraitements.sousEtat;
|
|
158
|
+
if (sousEtat !== void 0) {
|
|
159
|
+
cleanXmlArtefacts(sousEtat);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
if (amendement.representations !== void 0) {
|
|
164
|
+
const representation = amendement.representations.representation;
|
|
165
|
+
assert(!Array.isArray(representation));
|
|
166
|
+
amendement.representation = representation;
|
|
167
|
+
delete amendement.representations;
|
|
168
|
+
{
|
|
169
|
+
cleanXmlArtefacts(representation);
|
|
170
|
+
assert.strictEqual(representation.repSource, void 0);
|
|
171
|
+
assert.strictEqual(representation.offset, void 0);
|
|
172
|
+
assert.strictEqual(representation.dateDispoRepresentation, void 0);
|
|
173
|
+
const statutRepresentation = representation.statutRepresentation;
|
|
174
|
+
{
|
|
175
|
+
cleanBooleanAttribute(statutRepresentation, "canonique");
|
|
176
|
+
cleanBooleanAttribute(statutRepresentation, "enregistrement");
|
|
177
|
+
cleanBooleanAttribute(statutRepresentation, "officielle");
|
|
178
|
+
cleanBooleanAttribute(statutRepresentation, "transcription");
|
|
179
|
+
cleanBooleanAttribute(statutRepresentation, "verbatim");
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
const loiReference = amendement.loiReference;
|
|
184
|
+
if (loiReference !== void 0) {
|
|
185
|
+
cleanXmlArtefacts(loiReference);
|
|
186
|
+
}
|
|
187
|
+
const discussionCommune = amendement.discussionCommune;
|
|
188
|
+
if (discussionCommune !== void 0) {
|
|
189
|
+
cleanXmlArtefacts(discussionCommune);
|
|
190
|
+
}
|
|
191
|
+
const discussionIdentique = amendement.discussionIdentique;
|
|
192
|
+
if (discussionIdentique !== void 0) {
|
|
193
|
+
cleanXmlArtefacts(discussionIdentique);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
function cleanDispositifAmdtCreditPLF(dispositifAmdtCreditPLF, { rectificatif }) {
|
|
197
|
+
if (dispositifAmdtCreditPLF !== void 0) {
|
|
198
|
+
const listeProgrammes = dispositifAmdtCreditPLF.listeProgrammes?.programme;
|
|
199
|
+
if (listeProgrammes !== void 0) {
|
|
200
|
+
if (Array.isArray(listeProgrammes)) {
|
|
201
|
+
dispositifAmdtCreditPLF.listeProgrammes = listeProgrammes;
|
|
202
|
+
} else {
|
|
203
|
+
assert(listeProgrammes);
|
|
204
|
+
dispositifAmdtCreditPLF.listeProgrammes = [listeProgrammes];
|
|
205
|
+
}
|
|
206
|
+
for (const programme of dispositifAmdtCreditPLF.listeProgrammes) {
|
|
207
|
+
cleanXmlArtefacts(programme);
|
|
208
|
+
if (programme.lignesCredits !== void 0) {
|
|
209
|
+
let lignesCredits = programme.lignesCredits.ligneCredit;
|
|
210
|
+
if (lignesCredits === void 0) {
|
|
211
|
+
delete programme.lignesCredits;
|
|
212
|
+
} else {
|
|
213
|
+
if (!Array.isArray(lignesCredits)) {
|
|
214
|
+
assert(lignesCredits);
|
|
215
|
+
lignesCredits = [lignesCredits];
|
|
216
|
+
}
|
|
217
|
+
programme.lignesCredits = lignesCredits;
|
|
218
|
+
}
|
|
219
|
+
if (lignesCredits !== void 0) {
|
|
220
|
+
for (const ligneCredit of lignesCredits) {
|
|
221
|
+
if (rectificatif) {
|
|
222
|
+
cleanLigneCreditPLFR(ligneCredit);
|
|
223
|
+
} else {
|
|
224
|
+
cleanXmlArtefacts(ligneCredit);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
function cleanLigneCreditPLFR(ligneCreditPLFR) {
|
|
234
|
+
cleanXmlArtefacts(ligneCreditPLFR);
|
|
235
|
+
if (ligneCreditPLFR.lignesCredits !== void 0) {
|
|
236
|
+
let lignesCredits = ligneCreditPLFR.lignesCredits.ligneCredit;
|
|
237
|
+
if (lignesCredits === void 0) {
|
|
238
|
+
delete ligneCreditPLFR.lignesCredits;
|
|
239
|
+
} else {
|
|
240
|
+
if (!Array.isArray(lignesCredits)) {
|
|
241
|
+
assert(lignesCredits);
|
|
242
|
+
lignesCredits = [lignesCredits];
|
|
243
|
+
}
|
|
244
|
+
ligneCreditPLFR.lignesCredits = lignesCredits;
|
|
245
|
+
}
|
|
246
|
+
if (lignesCredits !== void 0) {
|
|
247
|
+
for (const ligneCredit of lignesCredits) {
|
|
248
|
+
cleanLigneCreditPLFR(ligneCredit);
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
export {
|
|
254
|
+
cleanBooleanAttribute as a,
|
|
255
|
+
cleanIntegerAttribute as b,
|
|
256
|
+
cleanXmlArtefacts as c,
|
|
257
|
+
cleanAmendement as d
|
|
258
|
+
};
|
|
259
|
+
//# sourceMappingURL=amendements-CN7bRFdP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"amendements-CN7bRFdP.js","sources":["../src/cleaners/xml.js","../src/cleaners/amendements.js"],"sourcesContent":["import assert from \"node:assert\";\n// Move constant to module scope to avoid recreation\nconst BOOLEAN_MAP = {\n false: false,\n true: true,\n};\nconst XML_NAMESPACE = \"http://schemas.assemblee-nationale.fr/referentiel\";\nconst XSI_NAMESPACE = \"http://www.w3.org/2001/XMLSchema-instance\";\nexport function cleanBooleanAttribute(o, key) {\n const stringValue = o[key];\n if (stringValue === undefined || stringValue === null) {\n delete o[key];\n return undefined;\n }\n const booleanValue = BOOLEAN_MAP[stringValue];\n assert.notStrictEqual(booleanValue, undefined, `Invalid boolean value: ${key} = ${stringValue}`);\n o[key] = booleanValue;\n return booleanValue;\n}\nexport function cleanIntegerAttribute(o, key) {\n const stringValue = o[key];\n if (stringValue === undefined || stringValue === null) {\n delete o[key];\n return undefined;\n }\n const integerValue = Number.parseInt(stringValue);\n assert(!Number.isNaN(integerValue), `Invalid number value: ${key} = ${stringValue}`);\n o[key] = integerValue;\n return integerValue;\n}\n/// Remove XML fields that have no use in JSON.\nexport function cleanXmlArtefacts(o) {\n // Optimize namespace checks with direct property access\n const xmlns = o[\"@xmlns\"] ?? o[\"xmlns\"];\n if (xmlns !== undefined) {\n assert.strictEqual(xmlns, XML_NAMESPACE);\n delete o[\"@xmlns\"];\n delete o[\"xmlns\"];\n }\n if (o[\"@xmlns:xsi\"] === XSI_NAMESPACE) {\n delete o[\"@xmlns:xsi\"];\n }\n // Optimize empty checks with direct property access\n for (const key in o) {\n const value = o[key];\n if (value === null) {\n delete o[key];\n continue;\n }\n if (value === undefined)\n continue;\n if (value[\"@xsi:nil\"] === \"true\" ||\n (Array.isArray(value) && value.length === 0) ||\n (!Array.isArray(value) &&\n value.constructor === Object &&\n Object.keys(value).length === 0)) {\n delete o[key];\n }\n }\n}\n//# sourceMappingURL=xml.js.map","import assert from \"node:assert\";\nimport { cleanBooleanAttribute, cleanXmlArtefacts } from \"./xml\";\nimport { AvantAApres } from \"../types/amendements\";\nexport function cleanAmendement(amendement) {\n cleanXmlArtefacts(amendement);\n const signataires = amendement.signataires;\n {\n cleanXmlArtefacts(signataires);\n const auteur = signataires.auteur;\n {\n cleanXmlArtefacts(auteur);\n }\n if (signataires.cosignataires !== undefined) {\n const acteurRef = signataires.cosignataires.acteurRef;\n if (Array.isArray(acteurRef)) {\n signataires.cosignatairesRefs = acteurRef;\n }\n else {\n assert(acteurRef);\n signataires.cosignatairesRefs = [acteurRef];\n }\n delete signataires.cosignataires;\n }\n let libelle = signataires.libelle;\n if (libelle !== undefined) {\n libelle = libelle.split(\" \").filter(Boolean).join(\" \");\n if (libelle) {\n signataires.libelle = libelle;\n }\n else {\n delete signataires.libelle;\n }\n }\n }\n const pointeurFragmentTexte = amendement.pointeurFragmentTexte;\n {\n cleanXmlArtefacts(pointeurFragmentTexte);\n const division = pointeurFragmentTexte.division;\n if (division !== undefined) {\n cleanXmlArtefacts(division);\n let avantAApres = division.avant_A_Apres;\n if (avantAApres !== undefined) {\n delete division.avant_A_Apres;\n if (avantAApres === \"Après\") {\n avantAApres = AvantAApres.Apres;\n }\n division.avantAApres = avantAApres;\n }\n }\n const amendementStandard = pointeurFragmentTexte.amendementStandard;\n if (amendementStandard !== undefined) {\n cleanXmlArtefacts(amendementStandard);\n const alinea = amendementStandard.alinea;\n if (alinea !== undefined) {\n cleanXmlArtefacts(alinea);\n let avantAApres = alinea.avant_A_Apres;\n if (avantAApres !== undefined) {\n delete alinea.avant_A_Apres;\n if (avantAApres === \"Après\") {\n avantAApres = AvantAApres.Apres;\n }\n else if (![AvantAApres.A, AvantAApres.Apres, AvantAApres.Avant].includes(avantAApres)) {\n avantAApres = AvantAApres.A;\n }\n alinea.avantAApres = avantAApres;\n }\n pointeurFragmentTexte.alinea = alinea;\n }\n delete pointeurFragmentTexte.amendementStandard;\n }\n }\n const corps = amendement.corps;\n if (corps !== undefined) {\n cleanXmlArtefacts(corps);\n const contenuAuteur = corps.contenuAuteur;\n if (contenuAuteur !== undefined) {\n cleanXmlArtefacts(contenuAuteur);\n const avantAppel = contenuAuteur.avantAppel;\n if (avantAppel !== undefined) {\n cleanXmlArtefacts(avantAppel);\n cleanDispositifAmdtCreditPLF(avantAppel.dispositifAmdtCreditPLF, {\n rectificatif: false,\n });\n cleanDispositifAmdtCreditPLF(avantAppel.dispositifAmdtCreditPLFR, {\n rectificatif: true,\n });\n if (Object.keys(avantAppel).length === 0) {\n delete contenuAuteur.avantAppel;\n }\n }\n assert.strictEqual(contenuAuteur.annexeExposeSommaire, undefined);\n cleanDispositifAmdtCreditPLF(contenuAuteur.dispositifAmdtCreditPLF, {\n rectificatif: false,\n });\n cleanDispositifAmdtCreditPLF(contenuAuteur.dispositifAmdtCreditPLFR, {\n rectificatif: true,\n });\n }\n }\n const cycleDeVie = amendement.cycleDeVie;\n if (cycleDeVie !== undefined) {\n cleanXmlArtefacts(cycleDeVie);\n const etatDesTraitements = cycleDeVie.etatDesTraitements;\n {\n cleanXmlArtefacts(etatDesTraitements);\n const etat = etatDesTraitements.etat;\n {\n cleanXmlArtefacts(etat);\n }\n const sousEtat = etatDesTraitements.sousEtat;\n if (sousEtat !== undefined) {\n cleanXmlArtefacts(sousEtat);\n }\n }\n }\n if (amendement.representations !== undefined) {\n const representation = amendement.representations.representation;\n assert(!Array.isArray(representation));\n amendement.representation = representation;\n delete amendement.representations;\n {\n cleanXmlArtefacts(representation);\n assert.strictEqual(representation.repSource, undefined);\n assert.strictEqual(representation.offset, undefined);\n assert.strictEqual(representation.dateDispoRepresentation, undefined);\n const statutRepresentation = representation.statutRepresentation;\n {\n cleanBooleanAttribute(statutRepresentation, \"canonique\");\n cleanBooleanAttribute(statutRepresentation, \"enregistrement\");\n cleanBooleanAttribute(statutRepresentation, \"officielle\");\n cleanBooleanAttribute(statutRepresentation, \"transcription\");\n cleanBooleanAttribute(statutRepresentation, \"verbatim\");\n }\n }\n }\n const loiReference = amendement.loiReference;\n if (loiReference !== undefined) {\n cleanXmlArtefacts(loiReference);\n }\n const discussionCommune = amendement.discussionCommune;\n if (discussionCommune !== undefined) {\n cleanXmlArtefacts(discussionCommune);\n }\n const discussionIdentique = amendement.discussionIdentique;\n if (discussionIdentique !== undefined) {\n cleanXmlArtefacts(discussionIdentique);\n }\n}\nfunction cleanDispositifAmdtCreditPLF(dispositifAmdtCreditPLF, { rectificatif }) {\n if (dispositifAmdtCreditPLF !== undefined) {\n const listeProgrammes = dispositifAmdtCreditPLF.listeProgrammes?.programme;\n if (listeProgrammes !== undefined) {\n if (Array.isArray(listeProgrammes)) {\n dispositifAmdtCreditPLF.listeProgrammes = listeProgrammes;\n }\n else {\n assert(listeProgrammes);\n dispositifAmdtCreditPLF.listeProgrammes = [listeProgrammes];\n }\n for (const programme of dispositifAmdtCreditPLF.listeProgrammes) {\n cleanXmlArtefacts(programme);\n if (programme.lignesCredits !== undefined) {\n let lignesCredits = programme.lignesCredits.ligneCredit;\n if (lignesCredits === undefined) {\n delete programme.lignesCredits;\n }\n else {\n if (!Array.isArray(lignesCredits)) {\n assert(lignesCredits);\n lignesCredits = [lignesCredits];\n }\n programme.lignesCredits = lignesCredits;\n }\n if (lignesCredits !== undefined) {\n for (const ligneCredit of lignesCredits) {\n if (rectificatif) {\n cleanLigneCreditPLFR(ligneCredit);\n }\n else {\n cleanXmlArtefacts(ligneCredit);\n }\n }\n }\n }\n }\n }\n }\n}\nfunction cleanLigneCreditPLFR(ligneCreditPLFR) {\n cleanXmlArtefacts(ligneCreditPLFR);\n if (ligneCreditPLFR.lignesCredits !== undefined) {\n let lignesCredits = ligneCreditPLFR.lignesCredits.ligneCredit;\n if (lignesCredits === undefined) {\n delete ligneCreditPLFR.lignesCredits;\n }\n else {\n if (!Array.isArray(lignesCredits)) {\n assert(lignesCredits);\n lignesCredits = [lignesCredits];\n }\n ligneCreditPLFR.lignesCredits = lignesCredits;\n }\n if (lignesCredits !== undefined) {\n for (const ligneCredit of lignesCredits) {\n cleanLigneCreditPLFR(ligneCredit);\n }\n }\n }\n}\nexport function cleanTexteLegislatif(texteLegislatif) {\n cleanXmlArtefacts(texteLegislatif);\n // Note: The following fields in `texteLegislatif.amendements` are currently ignored:\n // * \"#text\"?: string;\n // * offset?: null;\n // * nom?: Nom;\n // * avant_A_Apres?: DivisionAvantAApres;\n // * dateDepot?: Date;\n // * documentURI?: string;\n // Because it seems they should belong to an \"amendement\".\n let amendement = texteLegislatif.amendements.amendement;\n if (Array.isArray(amendement)) {\n texteLegislatif.amendements = amendement;\n }\n else {\n assert(amendement);\n texteLegislatif.amendements = [amendement];\n }\n for (const amendement of texteLegislatif.amendements) {\n cleanAmendement(amendement);\n }\n}\n//# sourceMappingURL=amendements.js.map"],"names":[],"mappings":"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"}
|