@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.
Files changed (400) hide show
  1. package/README.md +8 -1
  2. package/lib/amendements-CN7bRFdP.js +259 -0
  3. package/lib/amendements-CN7bRFdP.js.map +1 -0
  4. package/lib/amendements-Cg1lyCBp.js +735 -0
  5. package/lib/amendements-Cg1lyCBp.js.map +1 -0
  6. package/lib/api.d.ts +1 -0
  7. package/lib/api.d.ts.map +1 -0
  8. package/lib/cleaners/actes_legislatifs.d.ts +1 -0
  9. package/lib/cleaners/actes_legislatifs.d.ts.map +1 -0
  10. package/lib/cleaners/acteurs.d.ts +1 -0
  11. package/lib/cleaners/acteurs.d.ts.map +1 -0
  12. package/lib/cleaners/amendements.d.ts +1 -0
  13. package/lib/cleaners/amendements.d.ts.map +1 -0
  14. package/lib/cleaners/debats.d.ts +1 -0
  15. package/lib/cleaners/debats.d.ts.map +1 -0
  16. package/lib/cleaners/documents.d.ts +1 -0
  17. package/lib/cleaners/documents.d.ts.map +1 -0
  18. package/lib/cleaners/dossiers_legislatifs.d.ts +1 -0
  19. package/lib/cleaners/dossiers_legislatifs.d.ts.map +1 -0
  20. package/lib/cleaners/index.d.ts +10 -9
  21. package/lib/cleaners/index.d.ts.map +1 -0
  22. package/lib/cleaners/organes.d.ts +1 -0
  23. package/lib/cleaners/organes.d.ts.map +1 -0
  24. package/lib/cleaners/questions.d.ts +1 -0
  25. package/lib/cleaners/questions.d.ts.map +1 -0
  26. package/lib/cleaners/reunions.d.ts +1 -0
  27. package/lib/cleaners/reunions.d.ts.map +1 -0
  28. package/lib/cleaners/scrutins.d.ts +1 -0
  29. package/lib/cleaners/scrutins.d.ts.map +1 -0
  30. package/lib/cleaners/xml.d.ts +1 -0
  31. package/lib/cleaners/xml.d.ts.map +1 -0
  32. package/lib/cleaners.js +1138 -0
  33. package/lib/cleaners.js.map +1 -0
  34. package/lib/datasets.d.ts +4 -3
  35. package/lib/datasets.d.ts.map +1 -0
  36. package/lib/dates.d.ts +1 -0
  37. package/lib/dates.d.ts.map +1 -0
  38. package/lib/debats-BwZYgzXe.js +3978 -0
  39. package/lib/debats-BwZYgzXe.js.map +1 -0
  40. package/lib/dossiers_legislatifs.d.ts +3 -2
  41. package/lib/dossiers_legislatifs.d.ts.map +1 -0
  42. package/lib/file_systems.d.ts +1 -0
  43. package/lib/file_systems.d.ts.map +1 -0
  44. package/lib/git.d.ts +1 -0
  45. package/lib/git.d.ts.map +1 -0
  46. package/lib/index.d.ts +18 -22
  47. package/lib/index.d.ts.map +1 -0
  48. package/lib/index.js +1916 -285
  49. package/lib/index.js.map +1 -0
  50. package/lib/inserters.d.ts +6 -5
  51. package/lib/inserters.d.ts.map +1 -0
  52. package/lib/loaders.d.ts +13 -12
  53. package/lib/loaders.d.ts.map +1 -0
  54. package/lib/loaders.js +812 -1516
  55. package/lib/loaders.js.map +1 -0
  56. package/lib/logger.d.ts +1 -0
  57. package/lib/logger.d.ts.map +1 -0
  58. package/lib/organes.d.ts +2 -1
  59. package/lib/organes.d.ts.map +1 -0
  60. package/lib/parse-CzW8NHW5.js +2850 -0
  61. package/lib/parse-CzW8NHW5.js.map +1 -0
  62. package/lib/parsers/index.d.ts +3 -3
  63. package/lib/parsers/index.d.ts.map +1 -0
  64. package/lib/parsers/plf.d.ts +2 -0
  65. package/lib/parsers/plf.d.ts.map +1 -0
  66. package/lib/parsers/recherche_amendements.d.ts +3 -2
  67. package/lib/parsers/recherche_amendements.d.ts.map +1 -0
  68. package/lib/parsers/textes_lois.d.ts +2 -23
  69. package/lib/parsers/textes_lois.d.ts.map +1 -0
  70. package/lib/parsers.js +393 -0
  71. package/lib/parsers.js.map +1 -0
  72. package/lib/raw_types/acteurs_et_organes.d.ts +1 -0
  73. package/lib/raw_types/acteurs_et_organes.d.ts.map +1 -0
  74. package/lib/raw_types/agendas.d.ts +1 -0
  75. package/lib/raw_types/agendas.d.ts.map +1 -0
  76. package/lib/raw_types/amendements.d.ts +1 -0
  77. package/lib/raw_types/amendements.d.ts.map +1 -0
  78. package/lib/raw_types/debats.d.ts +3 -2
  79. package/lib/raw_types/debats.d.ts.map +1 -0
  80. package/lib/raw_types/dossiers_legislatifs.d.ts +2 -1
  81. package/lib/raw_types/dossiers_legislatifs.d.ts.map +1 -0
  82. package/lib/raw_types/questions.d.ts +1 -0
  83. package/lib/raw_types/questions.d.ts.map +1 -0
  84. package/lib/raw_types/scrutins.d.ts +1 -0
  85. package/lib/raw_types/scrutins.d.ts.map +1 -0
  86. package/lib/schemas/acteurs_et_organes.d.json +982 -0
  87. package/lib/schemas/acteurs_et_organes.json +1166 -0
  88. package/lib/schemas/agendas.d.json +1561 -0
  89. package/lib/schemas/agendas.json +1745 -0
  90. package/lib/schemas/amendements.d.json +1901 -0
  91. package/lib/schemas/amendements.json +2085 -0
  92. package/lib/schemas/debats.d.json +623 -0
  93. package/lib/schemas/debats.json +842 -0
  94. package/lib/schemas/dossiers_legislatifs.d.json +3690 -0
  95. package/lib/schemas/dossiers_legislatifs.json +3874 -0
  96. package/lib/schemas/legislatures.d.json +17 -0
  97. package/lib/schemas/legislatures.json +17 -0
  98. package/lib/schemas/questions.d.json +520 -0
  99. package/lib/schemas/questions.json +704 -0
  100. package/lib/schemas/scrutins.d.json +517 -0
  101. package/lib/schemas/scrutins.json +701 -0
  102. package/lib/scripts/add_links_to_documents.d.ts +2 -0
  103. package/lib/scripts/add_links_to_documents.d.ts.map +1 -0
  104. package/lib/scripts/clean_reorganized_data.d.ts +1 -0
  105. package/lib/scripts/clean_reorganized_data.d.ts.map +1 -0
  106. package/lib/scripts/copy-schemas.d.ts +2 -0
  107. package/lib/scripts/copy-schemas.d.ts.map +1 -0
  108. package/lib/scripts/diff_amendements.d.ts +1 -0
  109. package/lib/scripts/diff_amendements.d.ts.map +1 -0
  110. package/lib/scripts/document_dossiers_legislatifs.d.ts +1 -0
  111. package/lib/scripts/document_dossiers_legislatifs.d.ts.map +1 -0
  112. package/lib/scripts/generate-json-schemas.d.ts +2 -0
  113. package/lib/scripts/generate-json-schemas.d.ts.map +1 -0
  114. package/lib/scripts/get_today_reunions.d.ts +1 -0
  115. package/lib/scripts/get_today_reunions.d.ts.map +1 -0
  116. package/lib/scripts/merge_scrutins.d.ts +1 -0
  117. package/lib/scripts/merge_scrutins.d.ts.map +1 -0
  118. package/lib/scripts/process_open_dataset.d.ts +1 -0
  119. package/lib/scripts/process_open_dataset.d.ts.map +1 -0
  120. package/lib/scripts/raw_types_from_amendements.d.ts +1 -0
  121. package/lib/scripts/raw_types_from_amendements.d.ts.map +1 -0
  122. package/lib/scripts/reorganize_data.d.ts +1 -0
  123. package/lib/scripts/reorganize_data.d.ts.map +1 -0
  124. package/lib/scripts/retrieve_deputes_photos.d.ts +2 -1
  125. package/lib/scripts/retrieve_deputes_photos.d.ts.map +1 -0
  126. package/lib/scripts/retrieve_documents.d.ts +1 -0
  127. package/lib/scripts/retrieve_documents.d.ts.map +1 -0
  128. package/lib/scripts/retrieve_open_data.d.ts +1 -0
  129. package/lib/scripts/retrieve_open_data.d.ts.map +1 -0
  130. package/lib/scripts/retrieve_pending_amendments.d.ts +1 -0
  131. package/lib/scripts/retrieve_pending_amendments.d.ts.map +1 -0
  132. package/lib/scripts/retrieve_senateurs_photos.d.ts +1 -0
  133. package/lib/scripts/retrieve_senateurs_photos.d.ts.map +1 -0
  134. package/lib/scripts/shared/cli_helpers.d.ts +1 -0
  135. package/lib/scripts/shared/cli_helpers.d.ts.map +1 -0
  136. package/lib/scripts/test_iter_load.d.ts +1 -0
  137. package/lib/scripts/test_iter_load.d.ts.map +1 -0
  138. package/lib/scripts/test_load.d.ts +1 -0
  139. package/lib/scripts/test_load.d.ts.map +1 -0
  140. package/lib/scripts/test_load_big_files.d.ts +1 -0
  141. package/lib/scripts/test_load_big_files.d.ts.map +1 -0
  142. package/lib/scripts/validate_json.d.ts +1 -0
  143. package/lib/scripts/validate_json.d.ts.map +1 -0
  144. package/lib/shared_types/codes_actes.d.ts +1 -0
  145. package/lib/shared_types/codes_actes.d.ts.map +1 -0
  146. package/lib/strings.d.ts +1 -0
  147. package/lib/strings.d.ts.map +1 -0
  148. package/lib/types/acteurs_et_organes.d.ts +341 -0
  149. package/lib/types/acteurs_et_organes.d.ts.map +1 -0
  150. package/lib/types/agendas.d.ts +237 -10
  151. package/lib/types/agendas.d.ts.map +1 -0
  152. package/lib/types/amendements.d.ts +277 -1
  153. package/lib/types/amendements.d.ts.map +1 -0
  154. package/lib/types/debats.d.ts +53 -2
  155. package/lib/types/debats.d.ts.map +1 -0
  156. package/lib/types/dossiers_legislatifs.d.ts +404 -9
  157. package/lib/types/dossiers_legislatifs.d.ts.map +1 -0
  158. package/lib/types/legislatures.d.ts +1 -0
  159. package/lib/types/legislatures.d.ts.map +1 -0
  160. package/lib/types/questions.d.ts +100 -2
  161. package/lib/types/questions.d.ts.map +1 -0
  162. package/lib/types/scrutins.d.ts +102 -0
  163. package/lib/types/scrutins.d.ts.map +1 -0
  164. package/lib/urls.d.ts +3 -2
  165. package/lib/urls.d.ts.map +1 -0
  166. package/package.json +31 -95
  167. package/lib/api.js +0 -52
  168. package/lib/api.mjs +0 -45
  169. package/lib/bugs/acteur-00010/plugin.test.d.ts +0 -1
  170. package/lib/bugs/acteur-00010/plugin.test.js +0 -90
  171. package/lib/bugs/acteur-00010/plugin.test.mjs +0 -33
  172. package/lib/bugs/acteur-00010.d.ts +0 -7
  173. package/lib/bugs/acteur-00010.js +0 -116
  174. package/lib/bugs/acteur-00010.mjs +0 -26
  175. package/lib/bugs/agenda-00002/plugin.test.d.ts +0 -1
  176. package/lib/bugs/agenda-00002/plugin.test.js +0 -124
  177. package/lib/bugs/agenda-00002/plugin.test.mjs +0 -50
  178. package/lib/bugs/agenda-00002.d.ts +0 -15
  179. package/lib/bugs/agenda-00002.js +0 -406
  180. package/lib/bugs/agenda-00002.mjs +0 -172
  181. package/lib/bugs/agenda-00008/plugin.test.d.ts +0 -1
  182. package/lib/bugs/agenda-00008/plugin.test.js +0 -92
  183. package/lib/bugs/agenda-00008/plugin.test.mjs +0 -31
  184. package/lib/bugs/agenda-00008.d.ts +0 -7
  185. package/lib/bugs/agenda-00008.js +0 -123
  186. package/lib/bugs/agenda-00008.mjs +0 -26
  187. package/lib/bugs/agenda-00011/plugin.test.d.ts +0 -1
  188. package/lib/bugs/agenda-00011/plugin.test.js +0 -263
  189. package/lib/bugs/agenda-00011/plugin.test.mjs +0 -152
  190. package/lib/bugs/agenda-00011.d.ts +0 -16
  191. package/lib/bugs/agenda-00011.js +0 -333
  192. package/lib/bugs/agenda-00011.mjs +0 -125
  193. package/lib/bugs.d.ts +0 -21
  194. package/lib/bugs.js +0 -452
  195. package/lib/bugs.mjs +0 -70
  196. package/lib/cleaners/actes_legislatifs.js +0 -315
  197. package/lib/cleaners/actes_legislatifs.mjs +0 -253
  198. package/lib/cleaners/acteurs.js +0 -265
  199. package/lib/cleaners/acteurs.mjs +0 -180
  200. package/lib/cleaners/amendements.js +0 -294
  201. package/lib/cleaners/amendements.mjs +0 -227
  202. package/lib/cleaners/debats.js +0 -12
  203. package/lib/cleaners/debats.mjs +0 -5
  204. package/lib/cleaners/documents.js +0 -205
  205. package/lib/cleaners/documents.mjs +0 -133
  206. package/lib/cleaners/dossiers_legislatifs.js +0 -131
  207. package/lib/cleaners/dossiers_legislatifs.mjs +0 -70
  208. package/lib/cleaners/index.js +0 -70
  209. package/lib/cleaners/index.mjs +0 -10
  210. package/lib/cleaners/organes.js +0 -65
  211. package/lib/cleaners/organes.mjs +0 -48
  212. package/lib/cleaners/questions.js +0 -12
  213. package/lib/cleaners/questions.mjs +0 -5
  214. package/lib/cleaners/reunions.js +0 -312
  215. package/lib/cleaners/reunions.mjs +0 -255
  216. package/lib/cleaners/scrutins.js +0 -340
  217. package/lib/cleaners/scrutins.mjs +0 -221
  218. package/lib/cleaners/xml.js +0 -74
  219. package/lib/cleaners/xml.mjs +0 -59
  220. package/lib/datasets.js +0 -837
  221. package/lib/datasets.mjs +0 -755
  222. package/lib/dates.js +0 -124
  223. package/lib/dates.mjs +0 -100
  224. package/lib/dossiers_legislatifs.js +0 -346
  225. package/lib/dossiers_legislatifs.mjs +0 -208
  226. package/lib/file_systems.js +0 -162
  227. package/lib/file_systems.mjs +0 -62
  228. package/lib/git.js +0 -223
  229. package/lib/git.mjs +0 -151
  230. package/lib/index.mjs +0 -17
  231. package/lib/inserters.js +0 -521
  232. package/lib/inserters.mjs +0 -337
  233. package/lib/loaders.mjs +0 -886
  234. package/lib/logger.js +0 -35
  235. package/lib/logger.mjs +0 -26
  236. package/lib/organes.js +0 -22
  237. package/lib/organes.mjs +0 -15
  238. package/lib/parsers/documents.d.ts +0 -62
  239. package/lib/parsers/documents.js +0 -453
  240. package/lib/parsers/documents.mjs +0 -370
  241. package/lib/parsers/index.js +0 -40
  242. package/lib/parsers/index.mjs +0 -4
  243. package/lib/parsers/recherche_amendements.js +0 -403
  244. package/lib/parsers/recherche_amendements.mjs +0 -167
  245. package/lib/parsers/textes_lois.js +0 -307
  246. package/lib/parsers/textes_lois.mjs +0 -264
  247. package/lib/raw_types/acteurs_et_organes.js +0 -1215
  248. package/lib/raw_types/acteurs_et_organes.mjs +0 -1148
  249. package/lib/raw_types/agendas.js +0 -777
  250. package/lib/raw_types/agendas.mjs +0 -724
  251. package/lib/raw_types/amendements.js +0 -1052
  252. package/lib/raw_types/amendements.mjs +0 -993
  253. package/lib/raw_types/debats.js +0 -630
  254. package/lib/raw_types/debats.mjs +0 -573
  255. package/lib/raw_types/dossiers_legislatifs.js +0 -1529
  256. package/lib/raw_types/dossiers_legislatifs.mjs +0 -1471
  257. package/lib/raw_types/questions.js +0 -469
  258. package/lib/raw_types/questions.mjs +0 -416
  259. package/lib/raw_types/scrutins.js +0 -651
  260. package/lib/raw_types/scrutins.mjs +0 -598
  261. package/lib/schemas/acteur/Acteur.json +0 -56
  262. package/lib/schemas/acteur/AdresseElectronique.json +0 -52
  263. package/lib/schemas/acteur/AdressePostale.json +0 -75
  264. package/lib/schemas/acteur/Civ.json +0 -14
  265. package/lib/schemas/acteur/Collaborateur.json +0 -29
  266. package/lib/schemas/acteur/EtatCivil.json +0 -51
  267. package/lib/schemas/acteur/Ident.json +0 -40
  268. package/lib/schemas/acteur/Lieu.json +0 -66
  269. package/lib/schemas/acteur/Mandat.json +0 -192
  270. package/lib/schemas/acteur/Profession.json +0 -46
  271. package/lib/schemas/agenda/Agenda.json +0 -318
  272. package/lib/schemas/agenda/CycleDeVie.json +0 -45
  273. package/lib/schemas/agenda/PointOdj.json +0 -82
  274. package/lib/schemas/amendement/Amendement.json +0 -246
  275. package/lib/schemas/amendement/Diff.json +0 -25
  276. package/lib/schemas/amendement/DispositifAmdtCredit.json +0 -85
  277. package/lib/schemas/amendement/Identifiant.json +0 -62
  278. package/lib/schemas/amendement/PointeurFragmentTexte.json +0 -127
  279. package/lib/schemas/amendement/Representation.json +0 -67
  280. package/lib/schemas/amendement/Total.json +0 -26
  281. package/lib/schemas/converted_from_type/acteurs_et_organes.json +0 -666
  282. package/lib/schemas/converted_from_type/agendas.json +0 -1100
  283. package/lib/schemas/converted_from_type/amendements.json +0 -3191
  284. package/lib/schemas/converted_from_type/debats.json +0 -682
  285. package/lib/schemas/converted_from_type/deputes.json +0 -26
  286. package/lib/schemas/converted_from_type/dossiers_legislatifs.json +0 -2918
  287. package/lib/schemas/converted_from_type/legislatures.json +0 -16
  288. package/lib/schemas/converted_from_type/questions.json +0 -328
  289. package/lib/schemas/converted_from_type/scrutins.json +0 -393
  290. package/lib/schemas/debat/Contenu.json +0 -75
  291. package/lib/schemas/debat/Debat.json +0 -40
  292. package/lib/schemas/debat/Metadonnees.json +0 -75
  293. package/lib/schemas/debat/Orateur.json +0 -60
  294. package/lib/schemas/debat/Point.json +0 -169
  295. package/lib/schemas/debat/Sommaire.json +0 -71
  296. package/lib/schemas/debat/SommaireElement.json +0 -108
  297. package/lib/schemas/debat/Texte.json +0 -34
  298. package/lib/schemas/document/CodeLibelle.json +0 -25
  299. package/lib/schemas/document/Document.json +0 -385
  300. package/lib/schemas/document/Indexation.json +0 -38
  301. package/lib/schemas/dossier/ActeLegislatif.json +0 -211
  302. package/lib/schemas/dossier/ActeLegislatifBase.json +0 -62
  303. package/lib/schemas/dossier/Agenda.json +0 -23
  304. package/lib/schemas/dossier/ConseilConstitutionnel.json +0 -35
  305. package/lib/schemas/dossier/Decision.json +0 -25
  306. package/lib/schemas/dossier/Dossier.json +0 -124
  307. package/lib/schemas/dossier/EtudeImpact.json +0 -29
  308. package/lib/schemas/dossier/EtudePlf.json +0 -105
  309. package/lib/schemas/dossier/Europe.json +0 -42
  310. package/lib/schemas/dossier/FamCodeLibelle.json +0 -25
  311. package/lib/schemas/dossier/InfoJO.json +0 -23
  312. package/lib/schemas/dossier/Initiateur.json +0 -36
  313. package/lib/schemas/dossier/Motion.json +0 -27
  314. package/lib/schemas/dossier/Promulgation.json +0 -62
  315. package/lib/schemas/dossier/Rapporteur.json +0 -36
  316. package/lib/schemas/dossier/Texte.json +0 -47
  317. package/lib/schemas/organe/CodeTypeOrgane.json +0 -43
  318. package/lib/schemas/organe/Organe.json +0 -136
  319. package/lib/schemas/organe/ViMoDe.json +0 -28
  320. package/lib/schemas/question/Auteur.json +0 -58
  321. package/lib/schemas/question/Cloture.json +0 -28
  322. package/lib/schemas/question/InfoJO.json +0 -40
  323. package/lib/schemas/question/MinAttribElement.json +0 -30
  324. package/lib/schemas/question/Question.json +0 -172
  325. package/lib/schemas/question/Renouvellement.json +0 -17
  326. package/lib/schemas/question/Signalement.json +0 -21
  327. package/lib/schemas/question/Texte.json +0 -24
  328. package/lib/schemas/scrutin/DecompteVoix.json +0 -35
  329. package/lib/schemas/scrutin/Dysfonctionnement.json +0 -50
  330. package/lib/schemas/scrutin/MiseAuPoint.json +0 -53
  331. package/lib/schemas/scrutin/OrganeVotant.json +0 -88
  332. package/lib/schemas/scrutin/Scrutin.json +0 -187
  333. package/lib/schemas/scrutin/Votant.json +0 -37
  334. package/lib/scripts/bugs_helper.d.ts +0 -13
  335. package/lib/scripts/bugs_helper.js +0 -595
  336. package/lib/scripts/bugs_helper.mjs +0 -251
  337. package/lib/scripts/clean_reorganized_data.js +0 -613
  338. package/lib/scripts/clean_reorganized_data.mjs +0 -276
  339. package/lib/scripts/diff_amendements.js +0 -249
  340. package/lib/scripts/diff_amendements.mjs +0 -202
  341. package/lib/scripts/document_dossiers_legislatifs.js +0 -655
  342. package/lib/scripts/document_dossiers_legislatifs.mjs +0 -414
  343. package/lib/scripts/get_today_reunions.js +0 -37
  344. package/lib/scripts/get_today_reunions.mjs +0 -31
  345. package/lib/scripts/merge_scrutins.js +0 -97
  346. package/lib/scripts/merge_scrutins.mjs +0 -47
  347. package/lib/scripts/parse_textes_lois.d.ts +0 -1
  348. package/lib/scripts/parse_textes_lois.js +0 -171
  349. package/lib/scripts/parse_textes_lois.mjs +0 -140
  350. package/lib/scripts/process_open_dataset.js +0 -301
  351. package/lib/scripts/process_open_dataset.mjs +0 -134
  352. package/lib/scripts/raw_types_from_amendements.js +0 -135
  353. package/lib/scripts/raw_types_from_amendements.mjs +0 -134
  354. package/lib/scripts/reorganize_data.js +0 -805
  355. package/lib/scripts/reorganize_data.mjs +0 -517
  356. package/lib/scripts/retrieve_deputes_photos.js +0 -310
  357. package/lib/scripts/retrieve_deputes_photos.mjs +0 -158
  358. package/lib/scripts/retrieve_documents.js +0 -547
  359. package/lib/scripts/retrieve_documents.mjs +0 -242
  360. package/lib/scripts/retrieve_open_data.js +0 -107
  361. package/lib/scripts/retrieve_open_data.mjs +0 -26
  362. package/lib/scripts/retrieve_pending_amendments.js +0 -206
  363. package/lib/scripts/retrieve_pending_amendments.mjs +0 -57
  364. package/lib/scripts/retrieve_senateurs_photos.js +0 -234
  365. package/lib/scripts/retrieve_senateurs_photos.mjs +0 -116
  366. package/lib/scripts/retrieve_textes_lois.d.ts +0 -1
  367. package/lib/scripts/retrieve_textes_lois.js +0 -240
  368. package/lib/scripts/retrieve_textes_lois.mjs +0 -85
  369. package/lib/scripts/shared/cli_helpers.js +0 -89
  370. package/lib/scripts/shared/cli_helpers.mjs +0 -81
  371. package/lib/scripts/test_iter_load.js +0 -155
  372. package/lib/scripts/test_iter_load.mjs +0 -72
  373. package/lib/scripts/test_load.js +0 -26
  374. package/lib/scripts/test_load.mjs +0 -16
  375. package/lib/scripts/test_load_big_files.js +0 -26
  376. package/lib/scripts/test_load_big_files.mjs +0 -16
  377. package/lib/scripts/validate_json.js +0 -353
  378. package/lib/scripts/validate_json.mjs +0 -184
  379. package/lib/shared_types/codes_actes.js +0 -231
  380. package/lib/shared_types/codes_actes.mjs +0 -224
  381. package/lib/strings.js +0 -16
  382. package/lib/strings.mjs +0 -7
  383. package/lib/types/acteurs_et_organes.js +0 -965
  384. package/lib/types/acteurs_et_organes.mjs +0 -906
  385. package/lib/types/agendas.js +0 -628
  386. package/lib/types/agendas.mjs +0 -575
  387. package/lib/types/amendements.js +0 -899
  388. package/lib/types/amendements.mjs +0 -842
  389. package/lib/types/debats.js +0 -619
  390. package/lib/types/debats.mjs +0 -562
  391. package/lib/types/dossiers_legislatifs.js +0 -1188
  392. package/lib/types/dossiers_legislatifs.mjs +0 -1130
  393. package/lib/types/legislatures.js +0 -17
  394. package/lib/types/legislatures.mjs +0 -10
  395. package/lib/types/questions.js +0 -454
  396. package/lib/types/questions.mjs +0 -401
  397. package/lib/types/scrutins.js +0 -556
  398. package/lib/types/scrutins.mjs +0 -503
  399. package/lib/urls.js +0 -325
  400. package/lib/urls.mjs +0 -258
@@ -1,97 +0,0 @@
1
- "use strict";
2
-
3
- require("core-js/modules/es.symbol.js");
4
- require("core-js/modules/es.symbol.description.js");
5
- require("core-js/modules/es.symbol.iterator.js");
6
- require("core-js/modules/es.array.from.js");
7
- require("core-js/modules/es.array.is-array.js");
8
- require("core-js/modules/es.array.iterator.js");
9
- require("core-js/modules/es.array.slice.js");
10
- require("core-js/modules/es.date.to-string.js");
11
- require("core-js/modules/es.function.name.js");
12
- require("core-js/modules/es.object.to-string.js");
13
- require("core-js/modules/es.regexp.exec.js");
14
- require("core-js/modules/es.regexp.to-string.js");
15
- require("core-js/modules/es.string.iterator.js");
16
- require("core-js/modules/web.dom-collections.iterator.js");
17
- require("core-js/modules/es.array.concat.js");
18
- require("core-js/modules/es.array.join.js");
19
- require("core-js/modules/es.array.sort.js");
20
- require("core-js/modules/es.date.to-json.js");
21
- require("core-js/modules/es.object.keys.js");
22
- require("core-js/modules/es.string.ends-with.js");
23
- var _commandLineArgs = _interopRequireDefault(require("command-line-args"));
24
- var _fsExtra = _interopRequireDefault(require("fs-extra"));
25
- var _path = _interopRequireDefault(require("path"));
26
- var _datasets = require("../datasets");
27
- var _file_systems = require("../file_systems");
28
- var _cli_helpers = require("./shared/cli_helpers");
29
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
30
- function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
31
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
32
- function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
33
- function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
34
- function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
35
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
36
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
37
- var optionsDefinitions = [_cli_helpers.silentOption, _cli_helpers.verboseOption, _cli_helpers.dataDirDefaultOption];
38
- var options = (0, _commandLineArgs["default"])(optionsDefinitions);
39
- function mergeScrutins(dataDir) {
40
- var _iterator = _createForOfIteratorHelper(_datasets.datasets.scrutins),
41
- _step;
42
- try {
43
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
44
- var dataset = _step.value;
45
- switch (dataset.structure) {
46
- case _datasets.DatasetStructure.SegmentedFiles:
47
- {
48
- var originalJsonDir = _path["default"].join(dataDir, dataset.filename);
49
- if (!options.silent) {
50
- console.log("Merging ".concat(originalJsonDir));
51
- }
52
- var datasetMergedFilePath = _path["default"].join(dataDir, _path["default"].basename(originalJsonDir, ".json") + "_fusionne.json");
53
- var scrutins = [];
54
- var _iterator2 = _createForOfIteratorHelper((0, _file_systems.walkDir)(originalJsonDir)),
55
- _step2;
56
- try {
57
- for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
58
- var scrutinSplitPath = _step2.value;
59
- var scrutinFilename = scrutinSplitPath[scrutinSplitPath.length - 1];
60
- if (!scrutinFilename.endsWith(".json")) {
61
- continue;
62
- }
63
- var scrutinOriginalFilePath = _path["default"].join.apply(_path["default"], [originalJsonDir].concat(_toConsumableArray(scrutinSplitPath)));
64
- var scrutinOriginalJson = _fsExtra["default"].readFileSync(scrutinOriginalFilePath, {
65
- encoding: "utf8"
66
- });
67
- var scrutinOriginal = JSON.parse(scrutinOriginalJson);
68
- var scrutin = scrutinOriginal.scrutin;
69
- scrutins.push(scrutin);
70
- }
71
- } catch (err) {
72
- _iterator2.e(err);
73
- } finally {
74
- _iterator2.f();
75
- }
76
- scrutins.sort(function (a, b) {
77
- return a.uid.length === b.uid.length ? a.uid.localeCompare(b.uid) : a.uid.length - b.uid.length;
78
- });
79
- _fsExtra["default"].writeFileSync(datasetMergedFilePath, JSON.stringify({
80
- scrutins: {
81
- scrutin: scrutins
82
- }
83
- }, null, 2), {
84
- encoding: "utf8"
85
- });
86
- }
87
- break;
88
- }
89
- }
90
- } catch (err) {
91
- _iterator.e(err);
92
- } finally {
93
- _iterator.f();
94
- }
95
- }
96
- mergeScrutins(options.dataDir);
97
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29tbWFuZExpbmVBcmdzIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZnNFeHRyYSIsIl9wYXRoIiwiX2RhdGFzZXRzIiwiX2ZpbGVfc3lzdGVtcyIsIl9jbGlfaGVscGVycyIsImUiLCJfX2VzTW9kdWxlIiwiX3RvQ29uc3VtYWJsZUFycmF5IiwiciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJUeXBlRXJyb3IiLCJTeW1ib2wiLCJpdGVyYXRvciIsIkFycmF5IiwiZnJvbSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwidCIsImxlbmd0aCIsIl9uIiwiRiIsInMiLCJuIiwiZG9uZSIsInZhbHVlIiwiZiIsIm8iLCJhIiwidSIsImNhbGwiLCJuZXh0IiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsInRlc3QiLCJvcHRpb25zRGVmaW5pdGlvbnMiLCJzaWxlbnRPcHRpb24iLCJ2ZXJib3NlT3B0aW9uIiwiZGF0YURpckRlZmF1bHRPcHRpb24iLCJvcHRpb25zIiwiY29tbWFuZExpbmVBcmdzIiwibWVyZ2VTY3J1dGlucyIsImRhdGFEaXIiLCJfaXRlcmF0b3IiLCJkYXRhc2V0cyIsInNjcnV0aW5zIiwiX3N0ZXAiLCJkYXRhc2V0Iiwic3RydWN0dXJlIiwiRGF0YXNldFN0cnVjdHVyZSIsIlNlZ21lbnRlZEZpbGVzIiwib3JpZ2luYWxKc29uRGlyIiwicGF0aCIsImpvaW4iLCJmaWxlbmFtZSIsInNpbGVudCIsImNvbnNvbGUiLCJsb2ciLCJjb25jYXQiLCJkYXRhc2V0TWVyZ2VkRmlsZVBhdGgiLCJiYXNlbmFtZSIsIl9pdGVyYXRvcjIiLCJ3YWxrRGlyIiwiX3N0ZXAyIiwic2NydXRpblNwbGl0UGF0aCIsInNjcnV0aW5GaWxlbmFtZSIsImVuZHNXaXRoIiwic2NydXRpbk9yaWdpbmFsRmlsZVBhdGgiLCJhcHBseSIsInNjcnV0aW5PcmlnaW5hbEpzb24iLCJmcyIsInJlYWRGaWxlU3luYyIsImVuY29kaW5nIiwic2NydXRpbk9yaWdpbmFsIiwiSlNPTiIsInBhcnNlIiwic2NydXRpbiIsInB1c2giLCJlcnIiLCJzb3J0IiwiYiIsInVpZCIsImxvY2FsZUNvbXBhcmUiLCJ3cml0ZUZpbGVTeW5jIiwic3RyaW5naWZ5Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvbWVyZ2Vfc2NydXRpbnMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5cbmltcG9ydCB7IGRhdGFzZXRzLCBEYXRhc2V0U3RydWN0dXJlIH0gZnJvbSBcIi4uL2RhdGFzZXRzXCJcbmltcG9ydCB7IHdhbGtEaXIgfSBmcm9tIFwiLi4vZmlsZV9zeXN0ZW1zXCJcbmltcG9ydCB7XG4gIGRhdGFEaXJEZWZhdWx0T3B0aW9uLFxuICBzaWxlbnRPcHRpb24sXG4gIHZlcmJvc2VPcHRpb24sXG59IGZyb20gXCIuL3NoYXJlZC9jbGlfaGVscGVyc1wiXG5cbmNvbnN0IG9wdGlvbnNEZWZpbml0aW9ucyA9IFtzaWxlbnRPcHRpb24sIHZlcmJvc2VPcHRpb24sIGRhdGFEaXJEZWZhdWx0T3B0aW9uXVxuY29uc3Qgb3B0aW9ucyA9IGNvbW1hbmRMaW5lQXJncyhvcHRpb25zRGVmaW5pdGlvbnMpXG5cbmZ1bmN0aW9uIG1lcmdlU2NydXRpbnMoZGF0YURpcjogc3RyaW5nKSB7XG4gIGZvciAoY29uc3QgZGF0YXNldCBvZiBkYXRhc2V0cy5zY3J1dGlucykge1xuICAgIHN3aXRjaCAoZGF0YXNldC5zdHJ1Y3R1cmUpIHtcbiAgICAgIGNhc2UgRGF0YXNldFN0cnVjdHVyZS5TZWdtZW50ZWRGaWxlczpcbiAgICAgICAge1xuICAgICAgICAgIGNvbnN0IG9yaWdpbmFsSnNvbkRpcjogc3RyaW5nID0gcGF0aC5qb2luKGRhdGFEaXIsIGRhdGFzZXQuZmlsZW5hbWUpXG4gICAgICAgICAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAgICAgICAgICAgY29uc29sZS5sb2coYE1lcmdpbmcgJHtvcmlnaW5hbEpzb25EaXJ9YClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBjb25zdCBkYXRhc2V0TWVyZ2VkRmlsZVBhdGggPSBwYXRoLmpvaW4oXG4gICAgICAgICAgICBkYXRhRGlyLFxuICAgICAgICAgICAgcGF0aC5iYXNlbmFtZShvcmlnaW5hbEpzb25EaXIsIFwiLmpzb25cIikgKyBcIl9mdXNpb25uZS5qc29uXCIsXG4gICAgICAgICAgKVxuXG4gICAgICAgICAgY29uc3Qgc2NydXRpbnMgPSBbXVxuICAgICAgICAgIGZvciAoY29uc3Qgc2NydXRpblNwbGl0UGF0aCBvZiB3YWxrRGlyKG9yaWdpbmFsSnNvbkRpcikpIHtcbiAgICAgICAgICAgIGNvbnN0IHNjcnV0aW5GaWxlbmFtZSA9XG4gICAgICAgICAgICAgIHNjcnV0aW5TcGxpdFBhdGhbc2NydXRpblNwbGl0UGF0aC5sZW5ndGggLSAxXVxuICAgICAgICAgICAgaWYgKCFzY3J1dGluRmlsZW5hbWUuZW5kc1dpdGgoXCIuanNvblwiKSkge1xuICAgICAgICAgICAgICBjb250aW51ZVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3Qgc2NydXRpbk9yaWdpbmFsRmlsZVBhdGggPSBwYXRoLmpvaW4oXG4gICAgICAgICAgICAgIG9yaWdpbmFsSnNvbkRpcixcbiAgICAgICAgICAgICAgLi4uc2NydXRpblNwbGl0UGF0aCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGNvbnN0IHNjcnV0aW5PcmlnaW5hbEpzb246IHN0cmluZyA9IGZzLnJlYWRGaWxlU3luYyhcbiAgICAgICAgICAgICAgc2NydXRpbk9yaWdpbmFsRmlsZVBhdGgsXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBlbmNvZGluZzogXCJ1dGY4XCIsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBjb25zdCBzY3J1dGluT3JpZ2luYWw6IGFueSA9IEpTT04ucGFyc2Uoc2NydXRpbk9yaWdpbmFsSnNvbilcbiAgICAgICAgICAgIGNvbnN0IHNjcnV0aW4gPSBzY3J1dGluT3JpZ2luYWwuc2NydXRpblxuICAgICAgICAgICAgc2NydXRpbnMucHVzaChzY3J1dGluKVxuICAgICAgICAgIH1cbiAgICAgICAgICBzY3J1dGlucy5zb3J0KChhOiB7IHVpZDogc3RyaW5nIH0sIGI6IHsgdWlkOiBzdHJpbmcgfSkgPT5cbiAgICAgICAgICAgIGEudWlkLmxlbmd0aCA9PT0gYi51aWQubGVuZ3RoXG4gICAgICAgICAgICAgID8gYS51aWQubG9jYWxlQ29tcGFyZShiLnVpZClcbiAgICAgICAgICAgICAgOiBhLnVpZC5sZW5ndGggLSBiLnVpZC5sZW5ndGgsXG4gICAgICAgICAgKVxuXG4gICAgICAgICAgZnMud3JpdGVGaWxlU3luYyhcbiAgICAgICAgICAgIGRhdGFzZXRNZXJnZWRGaWxlUGF0aCxcbiAgICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHsgc2NydXRpbnM6IHsgc2NydXRpbjogc2NydXRpbnMgfSB9LCBudWxsLCAyKSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZW5jb2Rpbmc6IFwidXRmOFwiLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICApXG4gICAgICAgIH1cbiAgICAgICAgYnJlYWtcbiAgICB9XG4gIH1cbn1cblxubWVyZ2VTY3J1dGlucyhvcHRpb25zLmRhdGFEaXIpXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxnQkFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRixzQkFBQSxDQUFB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
@@ -1,47 +0,0 @@
1
- import commandLineArgs from "command-line-args";
2
- import fs from "fs-extra";
3
- import path from "path";
4
- import { datasets, DatasetStructure } from "../datasets.mjs";
5
- import { walkDir } from "../file_systems.mjs";
6
- import { dataDirDefaultOption, silentOption, verboseOption } from "./shared/cli_helpers.mjs";
7
- const optionsDefinitions = [silentOption, verboseOption, dataDirDefaultOption];
8
- const options = commandLineArgs(optionsDefinitions);
9
- function mergeScrutins(dataDir) {
10
- for (const dataset of datasets.scrutins) {
11
- switch (dataset.structure) {
12
- case DatasetStructure.SegmentedFiles:
13
- {
14
- const originalJsonDir = path.join(dataDir, dataset.filename);
15
- if (!options.silent) {
16
- console.log(`Merging ${originalJsonDir}`);
17
- }
18
- const datasetMergedFilePath = path.join(dataDir, path.basename(originalJsonDir, ".json") + "_fusionne.json");
19
- const scrutins = [];
20
- for (const scrutinSplitPath of walkDir(originalJsonDir)) {
21
- const scrutinFilename = scrutinSplitPath[scrutinSplitPath.length - 1];
22
- if (!scrutinFilename.endsWith(".json")) {
23
- continue;
24
- }
25
- const scrutinOriginalFilePath = path.join(originalJsonDir, ...scrutinSplitPath);
26
- const scrutinOriginalJson = fs.readFileSync(scrutinOriginalFilePath, {
27
- encoding: "utf8"
28
- });
29
- const scrutinOriginal = JSON.parse(scrutinOriginalJson);
30
- const scrutin = scrutinOriginal.scrutin;
31
- scrutins.push(scrutin);
32
- }
33
- scrutins.sort((a, b) => a.uid.length === b.uid.length ? a.uid.localeCompare(b.uid) : a.uid.length - b.uid.length);
34
- fs.writeFileSync(datasetMergedFilePath, JSON.stringify({
35
- scrutins: {
36
- scrutin: scrutins
37
- }
38
- }, null, 2), {
39
- encoding: "utf8"
40
- });
41
- }
42
- break;
43
- }
44
- }
45
- }
46
- mergeScrutins(options.dataDir);
47
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb21tYW5kTGluZUFyZ3MiLCJmcyIsInBhdGgiLCJkYXRhc2V0cyIsIkRhdGFzZXRTdHJ1Y3R1cmUiLCJ3YWxrRGlyIiwiZGF0YURpckRlZmF1bHRPcHRpb24iLCJzaWxlbnRPcHRpb24iLCJ2ZXJib3NlT3B0aW9uIiwib3B0aW9uc0RlZmluaXRpb25zIiwib3B0aW9ucyIsIm1lcmdlU2NydXRpbnMiLCJkYXRhRGlyIiwiZGF0YXNldCIsInNjcnV0aW5zIiwic3RydWN0dXJlIiwiU2VnbWVudGVkRmlsZXMiLCJvcmlnaW5hbEpzb25EaXIiLCJqb2luIiwiZmlsZW5hbWUiLCJzaWxlbnQiLCJjb25zb2xlIiwibG9nIiwiZGF0YXNldE1lcmdlZEZpbGVQYXRoIiwiYmFzZW5hbWUiLCJzY3J1dGluU3BsaXRQYXRoIiwic2NydXRpbkZpbGVuYW1lIiwibGVuZ3RoIiwiZW5kc1dpdGgiLCJzY3J1dGluT3JpZ2luYWxGaWxlUGF0aCIsInNjcnV0aW5PcmlnaW5hbEpzb24iLCJyZWFkRmlsZVN5bmMiLCJlbmNvZGluZyIsInNjcnV0aW5PcmlnaW5hbCIsIkpTT04iLCJwYXJzZSIsInNjcnV0aW4iLCJwdXNoIiwic29ydCIsImEiLCJiIiwidWlkIiwibG9jYWxlQ29tcGFyZSIsIndyaXRlRmlsZVN5bmMiLCJzdHJpbmdpZnkiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy9tZXJnZV9zY3J1dGlucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgY29tbWFuZExpbmVBcmdzIGZyb20gXCJjb21tYW5kLWxpbmUtYXJnc1wiXG5pbXBvcnQgZnMgZnJvbSBcImZzLWV4dHJhXCJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCJcblxuaW1wb3J0IHsgZGF0YXNldHMsIERhdGFzZXRTdHJ1Y3R1cmUgfSBmcm9tIFwiLi4vZGF0YXNldHNcIlxuaW1wb3J0IHsgd2Fsa0RpciB9IGZyb20gXCIuLi9maWxlX3N5c3RlbXNcIlxuaW1wb3J0IHtcbiAgZGF0YURpckRlZmF1bHRPcHRpb24sXG4gIHNpbGVudE9wdGlvbixcbiAgdmVyYm9zZU9wdGlvbixcbn0gZnJvbSBcIi4vc2hhcmVkL2NsaV9oZWxwZXJzXCJcblxuY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW3NpbGVudE9wdGlvbiwgdmVyYm9zZU9wdGlvbiwgZGF0YURpckRlZmF1bHRPcHRpb25dXG5jb25zdCBvcHRpb25zID0gY29tbWFuZExpbmVBcmdzKG9wdGlvbnNEZWZpbml0aW9ucylcblxuZnVuY3Rpb24gbWVyZ2VTY3J1dGlucyhkYXRhRGlyOiBzdHJpbmcpIHtcbiAgZm9yIChjb25zdCBkYXRhc2V0IG9mIGRhdGFzZXRzLnNjcnV0aW5zKSB7XG4gICAgc3dpdGNoIChkYXRhc2V0LnN0cnVjdHVyZSkge1xuICAgICAgY2FzZSBEYXRhc2V0U3RydWN0dXJlLlNlZ21lbnRlZEZpbGVzOlxuICAgICAgICB7XG4gICAgICAgICAgY29uc3Qgb3JpZ2luYWxKc29uRGlyOiBzdHJpbmcgPSBwYXRoLmpvaW4oZGF0YURpciwgZGF0YXNldC5maWxlbmFtZSlcbiAgICAgICAgICBpZiAoIW9wdGlvbnMuc2lsZW50KSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZyhgTWVyZ2luZyAke29yaWdpbmFsSnNvbkRpcn1gKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGRhdGFzZXRNZXJnZWRGaWxlUGF0aCA9IHBhdGguam9pbihcbiAgICAgICAgICAgIGRhdGFEaXIsXG4gICAgICAgICAgICBwYXRoLmJhc2VuYW1lKG9yaWdpbmFsSnNvbkRpciwgXCIuanNvblwiKSArIFwiX2Z1c2lvbm5lLmpzb25cIixcbiAgICAgICAgICApXG5cbiAgICAgICAgICBjb25zdCBzY3J1dGlucyA9IFtdXG4gICAgICAgICAgZm9yIChjb25zdCBzY3J1dGluU3BsaXRQYXRoIG9mIHdhbGtEaXIob3JpZ2luYWxKc29uRGlyKSkge1xuICAgICAgICAgICAgY29uc3Qgc2NydXRpbkZpbGVuYW1lID1cbiAgICAgICAgICAgICAgc2NydXRpblNwbGl0UGF0aFtzY3J1dGluU3BsaXRQYXRoLmxlbmd0aCAtIDFdXG4gICAgICAgICAgICBpZiAoIXNjcnV0aW5GaWxlbmFtZS5lbmRzV2l0aChcIi5qc29uXCIpKSB7XG4gICAgICAgICAgICAgIGNvbnRpbnVlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBzY3J1dGluT3JpZ2luYWxGaWxlUGF0aCA9IHBhdGguam9pbihcbiAgICAgICAgICAgICAgb3JpZ2luYWxKc29uRGlyLFxuICAgICAgICAgICAgICAuLi5zY3J1dGluU3BsaXRQYXRoLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgY29uc3Qgc2NydXRpbk9yaWdpbmFsSnNvbjogc3RyaW5nID0gZnMucmVhZEZpbGVTeW5jKFxuICAgICAgICAgICAgICBzY3J1dGluT3JpZ2luYWxGaWxlUGF0aCxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGVuY29kaW5nOiBcInV0ZjhcIixcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGNvbnN0IHNjcnV0aW5PcmlnaW5hbDogYW55ID0gSlNPTi5wYXJzZShzY3J1dGluT3JpZ2luYWxKc29uKVxuICAgICAgICAgICAgY29uc3Qgc2NydXRpbiA9IHNjcnV0aW5PcmlnaW5hbC5zY3J1dGluXG4gICAgICAgICAgICBzY3J1dGlucy5wdXNoKHNjcnV0aW4pXG4gICAgICAgICAgfVxuICAgICAgICAgIHNjcnV0aW5zLnNvcnQoKGE6IHsgdWlkOiBzdHJpbmcgfSwgYjogeyB1aWQ6IHN0cmluZyB9KSA9PlxuICAgICAgICAgICAgYS51aWQubGVuZ3RoID09PSBiLnVpZC5sZW5ndGhcbiAgICAgICAgICAgICAgPyBhLnVpZC5sb2NhbGVDb21wYXJlKGIudWlkKVxuICAgICAgICAgICAgICA6IGEudWlkLmxlbmd0aCAtIGIudWlkLmxlbmd0aCxcbiAgICAgICAgICApXG5cbiAgICAgICAgICBmcy53cml0ZUZpbGVTeW5jKFxuICAgICAgICAgICAgZGF0YXNldE1lcmdlZEZpbGVQYXRoLFxuICAgICAgICAgICAgSlNPTi5zdHJpbmdpZnkoeyBzY3J1dGluczogeyBzY3J1dGluOiBzY3J1dGlucyB9IH0sIG51bGwsIDIpLFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBlbmNvZGluZzogXCJ1dGY4XCIsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIClcbiAgICAgICAgfVxuICAgICAgICBicmVha1xuICAgIH1cbiAgfVxufVxuXG5tZXJnZVNjcnV0aW5zKG9wdGlvbnMuZGF0YURpcilcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsZUFBZSxNQUFNLG1CQUFtQjtBQUMvQyxPQUFPQyxFQUFFLE1BQU0sVUFBVTtBQUN6QixPQUFPQyxJQUFJLE1BQU0sTUFBTTtBQUFBLFNBRWRDLFFBQVEsRUFBRUMsZ0JBQWdCO0FBQUEsU0FDMUJDLE9BQU87QUFBQSxTQUVkQyxvQkFBb0IsRUFDcEJDLFlBQVksRUFDWkMsYUFBYTtBQUdmLE1BQU1DLGtCQUFrQixHQUFHLENBQUNGLFlBQVksRUFBRUMsYUFBYSxFQUFFRixvQkFBb0IsQ0FBQztBQUM5RSxNQUFNSSxPQUFPLEdBQUdWLGVBQWUsQ0FBQ1Msa0JBQWtCLENBQUM7QUFFbkQsU0FBU0UsYUFBYUEsQ0FBQ0MsT0FBZSxFQUFFO0VBQ3RDLEtBQUssTUFBTUMsT0FBTyxJQUFJVixRQUFRLENBQUNXLFFBQVEsRUFBRTtJQUN2QyxRQUFRRCxPQUFPLENBQUNFLFNBQVM7TUFDdkIsS0FBS1gsZ0JBQWdCLENBQUNZLGNBQWM7UUFDbEM7VUFDRSxNQUFNQyxlQUF1QixHQUFHZixJQUFJLENBQUNnQixJQUFJLENBQUNOLE9BQU8sRUFBRUMsT0FBTyxDQUFDTSxRQUFRLENBQUM7VUFDcEUsSUFBSSxDQUFDVCxPQUFPLENBQUNVLE1BQU0sRUFBRTtZQUNuQkMsT0FBTyxDQUFDQyxHQUFHLENBQUMsV0FBV0wsZUFBZSxFQUFFLENBQUM7VUFDM0M7VUFFQSxNQUFNTSxxQkFBcUIsR0FBR3JCLElBQUksQ0FBQ2dCLElBQUksQ0FDckNOLE9BQU8sRUFDUFYsSUFBSSxDQUFDc0IsUUFBUSxDQUFDUCxlQUFlLEVBQUUsT0FBTyxDQUFDLEdBQUcsZ0JBQzVDLENBQUM7VUFFRCxNQUFNSCxRQUFRLEdBQUcsRUFBRTtVQUNuQixLQUFLLE1BQU1XLGdCQUFnQixJQUFJcEIsT0FBTyxDQUFDWSxlQUFlLENBQUMsRUFBRTtZQUN2RCxNQUFNUyxlQUFlLEdBQ25CRCxnQkFBZ0IsQ0FBQ0EsZ0JBQWdCLENBQUNFLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDRCxlQUFlLENBQUNFLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRTtjQUN0QztZQUNGO1lBQ0EsTUFBTUMsdUJBQXVCLEdBQUczQixJQUFJLENBQUNnQixJQUFJLENBQ3ZDRCxlQUFlLEVBQ2YsR0FBR1EsZ0JBQ0wsQ0FBQztZQUNELE1BQU1LLG1CQUEyQixHQUFHN0IsRUFBRSxDQUFDOEIsWUFBWSxDQUNqREYsdUJBQXVCLEVBQ3ZCO2NBQ0VHLFFBQVEsRUFBRTtZQUNaLENBQ0YsQ0FBQztZQUNELE1BQU1DLGVBQW9CLEdBQUdDLElBQUksQ0FBQ0MsS0FBSyxDQUFDTCxtQkFBbUIsQ0FBQztZQUM1RCxNQUFNTSxPQUFPLEdBQUdILGVBQWUsQ0FBQ0csT0FBTztZQUN2Q3RCLFFBQVEsQ0FBQ3VCLElBQUksQ0FBQ0QsT0FBTyxDQUFDO1VBQ3hCO1VBQ0F0QixRQUFRLENBQUN3QixJQUFJLENBQUMsQ0FBQ0MsQ0FBa0IsRUFBRUMsQ0FBa0IsS0FDbkRELENBQUMsQ0FBQ0UsR0FBRyxDQUFDZCxNQUFNLEtBQUthLENBQUMsQ0FBQ0MsR0FBRyxDQUFDZCxNQUFNLEdBQ3pCWSxDQUFDLENBQUNFLEdBQUcsQ0FBQ0MsYUFBYSxDQUFDRixDQUFDLENBQUNDLEdBQUcsQ0FBQyxHQUMxQkYsQ0FBQyxDQUFDRSxHQUFHLENBQUNkLE1BQU0sR0FBR2EsQ0FBQyxDQUFDQyxHQUFHLENBQUNkLE1BQzNCLENBQUM7VUFFRDFCLEVBQUUsQ0FBQzBDLGFBQWEsQ0FDZHBCLHFCQUFxQixFQUNyQlcsSUFBSSxDQUFDVSxTQUFTLENBQUM7WUFBRTlCLFFBQVEsRUFBRTtjQUFFc0IsT0FBTyxFQUFFdEI7WUFBUztVQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQzVEO1lBQ0VrQixRQUFRLEVBQUU7VUFDWixDQUNGLENBQUM7UUFDSDtRQUNBO0lBQ0o7RUFDRjtBQUNGO0FBRUFyQixhQUFhLENBQUNELE9BQU8sQ0FBQ0UsT0FBTyxDQUFDIiwiaWdub3JlTGlzdCI6W119
@@ -1 +0,0 @@
1
- export {};
@@ -1,171 +0,0 @@
1
- "use strict";
2
-
3
- require("core-js/modules/es.symbol.js");
4
- require("core-js/modules/es.symbol.description.js");
5
- require("core-js/modules/es.symbol.iterator.js");
6
- require("core-js/modules/es.array.from.js");
7
- require("core-js/modules/es.array.is-array.js");
8
- require("core-js/modules/es.array.iterator.js");
9
- require("core-js/modules/es.array.slice.js");
10
- require("core-js/modules/es.date.to-string.js");
11
- require("core-js/modules/es.function.name.js");
12
- require("core-js/modules/es.object.to-string.js");
13
- require("core-js/modules/es.regexp.exec.js");
14
- require("core-js/modules/es.regexp.to-string.js");
15
- require("core-js/modules/es.string.iterator.js");
16
- require("core-js/modules/web.dom-collections.iterator.js");
17
- require("core-js/modules/es.array.concat.js");
18
- require("core-js/modules/es.array.join.js");
19
- require("core-js/modules/es.date.to-json.js");
20
- require("core-js/modules/es.string.ends-with.js");
21
- require("core-js/modules/es.string.starts-with.js");
22
- var _assert = _interopRequireDefault(require("assert"));
23
- var _commandLineArgs = _interopRequireDefault(require("command-line-args"));
24
- var _fsExtra = _interopRequireDefault(require("fs-extra"));
25
- var _path = _interopRequireDefault(require("path"));
26
- var _documents = require("../parsers/documents");
27
- var _cli_helpers = require("./shared/cli_helpers");
28
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
29
- function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
30
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
31
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } // import { execSync } from "child_process"
32
- // import { EnabledDatasets } from "../datasets"
33
- // import { loadAssembleeData } from "../loaders"
34
- // import { Document, TypeDocument } from "../types/dossiers_legislatifs"
35
- // import { DocumentUrlFormat, urlFromDocument } from "../urls"
36
- var optionsDefinitions = [_cli_helpers.commitOption, _cli_helpers.remoteOption, _cli_helpers.legislatureOption, _cli_helpers.silentOption, _cli_helpers.verboseOption, _cli_helpers.dataDirDefaultOption, {
37
- alias: "f",
38
- help: "Filename of Assemblée's document to parse",
39
- name: "filename",
40
- type: String
41
- }];
42
- var options = (0, _commandLineArgs["default"])(optionsDefinitions);
43
- function parseTextesLois() {
44
- (0, _assert["default"])(!options.commit || options.filename, 'Options "commit" & "filename" are incompatible');
45
- var dataDir = options.dataDir;
46
- // const { documentByUid } = loadAssembleeData(
47
- // dataDir,
48
- // EnabledDatasets.DossiersLegislatifs,
49
- // options.legislature,
50
- // )
51
-
52
- var textesLoisDir = _path["default"].join(dataDir, "www.assemblee-nationale.fr", options.legislature, "textes");
53
- var _iterator = _createForOfIteratorHelper(_fsExtra["default"].readdirSync(textesLoisDir)),
54
- _step;
55
- try {
56
- for (_iterator.s(); !(_step = _iterator.n()).done;) {
57
- var filename = _step.value;
58
- if (filename[0] === ".") {
59
- continue;
60
- }
61
- if (!filename.endsWith(".asp")) {
62
- continue;
63
- }
64
- if (options.filename && !filename.startsWith(options.filename)) {
65
- continue;
66
- }
67
- var texteLoiPath = _path["default"].join(textesLoisDir, filename);
68
- if (!options.silent) {
69
- console.log("Parsing \"texte de loi\" ".concat(texteLoiPath, "\u2026"));
70
- }
71
- var texteLoiPage = _fsExtra["default"].readFileSync(texteLoiPath, {
72
- encoding: "utf-8"
73
- });
74
- var texteLoiUrl = "http://www.assemblee-nationale.fr/".concat(options.legislature, "/textes/").concat(filename);
75
- var texteLoiParsed = (0, _documents.parseTexteLoi)(texteLoiUrl, texteLoiPage);
76
- if (options.filename && options.verbose) {
77
- console.log(JSON.stringify(texteLoiParsed.subdivisions, null, 2));
78
- }
79
- var error = texteLoiParsed.error;
80
- if (error) {
81
- console.error(" Error while parsing page \"".concat(texteLoiPath, "\":\n\nError:\n").concat(JSON.stringify(error, null, 2)));
82
- continue;
83
- }
84
- }
85
-
86
- // fs.ensureDirSync(textesLoisDir)
87
- // if (!options.uid) {
88
- // for (const filename of fs.readdirSync(textesLoisDir)) {
89
- // if (filename[0] === ".") {
90
- // continue
91
- // }
92
- // fs.removeSync(path.join(textesLoisDir, filename))
93
- // }
94
- // }
95
-
96
- // const textesLois = Object.values(documentByUid)
97
- // .filter(document => document.xsiType === TypeDocument.TexteLoiType)
98
- // .filter(
99
- // document => document.uid.startsWith("PIONAN") || document.uid.startsWith("PRJLAN"),
100
- // )
101
- // .map(document => {
102
- // return {
103
- // ...document,
104
- // rawDocumentAssembleeUrl: urlFromDocument(document, DocumentUrlFormat.RawHtml),
105
- // }
106
- // })
107
- // .sort((a, b) =>
108
- // a.rawDocumentAssembleeUrl === null
109
- // ? -1
110
- // : b.rawDocumentAssembleeUrl === null
111
- // ? 1
112
- // : a.rawDocumentAssembleeUrl.localeCompare(b.rawDocumentAssembleeUrl),
113
- // )
114
-
115
- // const firstUid = options.uid
116
- // let skip = !!firstUid
117
- // for (const texteLoi of textesLois) {
118
- // if (skip) {
119
- // if (texteLoi.uid === firstUid) {
120
- // skip = false
121
- // } else {
122
- // continue
123
- // }
124
- // }
125
- // if (!options.silent) {
126
- // console.log(
127
- // `Retrieving bill ${texteLoi.uid} at ${texteLoi.rawDocumentAssembleeUrl}`,
128
- // )
129
- // }
130
- // if (texteLoi.rawDocumentAssembleeUrl === null) {
131
- // continue
132
- // }
133
- // const url = new URL(texteLoi.rawDocumentAssembleeUrl)
134
- // const filePath = path.join(dataDir, url.hostname, ...url.pathname.split("/"))
135
- // assert.strictEqual(textesLoisDir, path.dirname(filePath))
136
-
137
- // let page = undefined
138
- // try {
139
- // page = fs.readFileSync(filePath, { encoding: "utf-8" })
140
- // } catch (e) {
141
- // if (e.code === "ENOENT") {
142
- // continue
143
- // }
144
- // throw e
145
- // }
146
-
147
- // if (options.parse) {
148
- // const texteLoiParsed = parseTexteLoi(texteLoi.rawDocumentAssembleeUrl, page)
149
- // const { error } = texteLoiParsed
150
- // if (error) {
151
- // console.error(
152
- // `Error while parsing page "${texteLoi.rawDocumentAssembleeUrl}" (uid: ${
153
- // texteLoi.uid
154
- // }):\n\nError:\n${JSON.stringify(error, null, 2)}`,
155
- // )
156
- // continue
157
- // }
158
- // }
159
- // }
160
- // if (options.commit) {
161
- // return git.commitAndPush(textesLoisDir, "Nouvelle moisson", options.remote)
162
- // }
163
- } catch (err) {
164
- _iterator.e(err);
165
- } finally {
166
- _iterator.f();
167
- }
168
- return 0;
169
- }
170
- process.exit(parseTextesLois());
171
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYXNzZXJ0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfY29tbWFuZExpbmVBcmdzIiwiX2ZzRXh0cmEiLCJfcGF0aCIsIl9kb2N1bWVudHMiLCJfY2xpX2hlbHBlcnMiLCJlIiwiX19lc01vZHVsZSIsIl9jcmVhdGVGb3JPZkl0ZXJhdG9ySGVscGVyIiwiciIsInQiLCJTeW1ib2wiLCJpdGVyYXRvciIsIkFycmF5IiwiaXNBcnJheSIsIl91bnN1cHBvcnRlZEl0ZXJhYmxlVG9BcnJheSIsImxlbmd0aCIsIl9uIiwiRiIsInMiLCJuIiwiZG9uZSIsInZhbHVlIiwiZiIsIlR5cGVFcnJvciIsIm8iLCJhIiwidSIsImNhbGwiLCJuZXh0IiwiX2FycmF5TGlrZVRvQXJyYXkiLCJ0b1N0cmluZyIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwiZnJvbSIsInRlc3QiLCJvcHRpb25zRGVmaW5pdGlvbnMiLCJjb21taXRPcHRpb24iLCJyZW1vdGVPcHRpb24iLCJsZWdpc2xhdHVyZU9wdGlvbiIsInNpbGVudE9wdGlvbiIsInZlcmJvc2VPcHRpb24iLCJkYXRhRGlyRGVmYXVsdE9wdGlvbiIsImFsaWFzIiwiaGVscCIsInR5cGUiLCJTdHJpbmciLCJvcHRpb25zIiwiY29tbWFuZExpbmVBcmdzIiwicGFyc2VUZXh0ZXNMb2lzIiwiYXNzZXJ0IiwiY29tbWl0IiwiZmlsZW5hbWUiLCJkYXRhRGlyIiwidGV4dGVzTG9pc0RpciIsInBhdGgiLCJqb2luIiwibGVnaXNsYXR1cmUiLCJfaXRlcmF0b3IiLCJmcyIsInJlYWRkaXJTeW5jIiwiX3N0ZXAiLCJlbmRzV2l0aCIsInN0YXJ0c1dpdGgiLCJ0ZXh0ZUxvaVBhdGgiLCJzaWxlbnQiLCJjb25zb2xlIiwibG9nIiwiY29uY2F0IiwidGV4dGVMb2lQYWdlIiwicmVhZEZpbGVTeW5jIiwiZW5jb2RpbmciLCJ0ZXh0ZUxvaVVybCIsInRleHRlTG9pUGFyc2VkIiwicGFyc2VUZXh0ZUxvaSIsInZlcmJvc2UiLCJKU09OIiwic3RyaW5naWZ5Iiwic3ViZGl2aXNpb25zIiwiZXJyb3IiLCJlcnIiLCJwcm9jZXNzIiwiZXhpdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL3BhcnNlX3RleHRlc19sb2lzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBhc3NlcnQgZnJvbSBcImFzc2VydFwiXG4vLyBpbXBvcnQgeyBleGVjU3luYyB9IGZyb20gXCJjaGlsZF9wcm9jZXNzXCJcbmltcG9ydCBjb21tYW5kTGluZUFyZ3MgZnJvbSBcImNvbW1hbmQtbGluZS1hcmdzXCJcbmltcG9ydCBmcyBmcm9tIFwiZnMtZXh0cmFcIlxuaW1wb3J0IHBhdGggZnJvbSBcInBhdGhcIlxuXG4vLyBpbXBvcnQgeyBFbmFibGVkRGF0YXNldHMgfSBmcm9tIFwiLi4vZGF0YXNldHNcIlxuLy8gaW1wb3J0IHsgbG9hZEFzc2VtYmxlZURhdGEgfSBmcm9tIFwiLi4vbG9hZGVyc1wiXG5pbXBvcnQgeyBwYXJzZVRleHRlTG9pIH0gZnJvbSBcIi4uL3BhcnNlcnMvZG9jdW1lbnRzXCJcbi8vIGltcG9ydCB7IERvY3VtZW50LCBUeXBlRG9jdW1lbnQgfSBmcm9tIFwiLi4vdHlwZXMvZG9zc2llcnNfbGVnaXNsYXRpZnNcIlxuLy8gaW1wb3J0IHsgRG9jdW1lbnRVcmxGb3JtYXQsIHVybEZyb21Eb2N1bWVudCB9IGZyb20gXCIuLi91cmxzXCJcbmltcG9ydCB7XG4gIGNvbW1pdE9wdGlvbixcbiAgbGVnaXNsYXR1cmVPcHRpb24sXG4gIHJlbW90ZU9wdGlvbixcbiAgc2lsZW50T3B0aW9uLFxuICB2ZXJib3NlT3B0aW9uLFxuICBkYXRhRGlyRGVmYXVsdE9wdGlvbixcbn0gZnJvbSBcIi4vc2hhcmVkL2NsaV9oZWxwZXJzXCJcblxuY29uc3Qgb3B0aW9uc0RlZmluaXRpb25zID0gW1xuICBjb21taXRPcHRpb24sXG4gIHJlbW90ZU9wdGlvbixcbiAgbGVnaXNsYXR1cmVPcHRpb24sXG4gIHNpbGVudE9wdGlvbixcbiAgdmVyYm9zZU9wdGlvbixcbiAgZGF0YURpckRlZmF1bHRPcHRpb24sXG4gIHtcbiAgICBhbGlhczogXCJmXCIsXG4gICAgaGVscDogXCJGaWxlbmFtZSBvZiBBc3NlbWJsw6llJ3MgZG9jdW1lbnQgdG8gcGFyc2VcIixcbiAgICBuYW1lOiBcImZpbGVuYW1lXCIsXG4gICAgdHlwZTogU3RyaW5nLFxuICB9LFxuXVxuY29uc3Qgb3B0aW9ucyA9IGNvbW1hbmRMaW5lQXJncyhvcHRpb25zRGVmaW5pdGlvbnMpXG5cbmZ1bmN0aW9uIHBhcnNlVGV4dGVzTG9pcygpOiBudW1iZXIge1xuICBhc3NlcnQoXG4gICAgIW9wdGlvbnMuY29tbWl0IHx8IG9wdGlvbnMuZmlsZW5hbWUsXG4gICAgJ09wdGlvbnMgXCJjb21taXRcIiAmIFwiZmlsZW5hbWVcIiBhcmUgaW5jb21wYXRpYmxlJyxcbiAgKVxuXG4gIGNvbnN0IGRhdGFEaXIgPSBvcHRpb25zLmRhdGFEaXJcbiAgLy8gY29uc3QgeyBkb2N1bWVudEJ5VWlkIH0gPSBsb2FkQXNzZW1ibGVlRGF0YShcbiAgLy8gICBkYXRhRGlyLFxuICAvLyAgIEVuYWJsZWREYXRhc2V0cy5Eb3NzaWVyc0xlZ2lzbGF0aWZzLFxuICAvLyAgIG9wdGlvbnMubGVnaXNsYXR1cmUsXG4gIC8vIClcblxuICBjb25zdCB0ZXh0ZXNMb2lzRGlyID0gcGF0aC5qb2luKFxuICAgIGRhdGFEaXIsXG4gICAgXCJ3d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mclwiLFxuICAgIG9wdGlvbnMubGVnaXNsYXR1cmUsXG4gICAgXCJ0ZXh0ZXNcIixcbiAgKVxuICBmb3IgKGNvbnN0IGZpbGVuYW1lIG9mIGZzLnJlYWRkaXJTeW5jKHRleHRlc0xvaXNEaXIpKSB7XG4gICAgaWYgKGZpbGVuYW1lWzBdID09PSBcIi5cIikge1xuICAgICAgY29udGludWVcbiAgICB9XG4gICAgaWYgKCFmaWxlbmFtZS5lbmRzV2l0aChcIi5hc3BcIikpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIGlmIChvcHRpb25zLmZpbGVuYW1lICYmICFmaWxlbmFtZS5zdGFydHNXaXRoKG9wdGlvbnMuZmlsZW5hbWUpKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBjb25zdCB0ZXh0ZUxvaVBhdGggPSBwYXRoLmpvaW4odGV4dGVzTG9pc0RpciwgZmlsZW5hbWUpXG4gICAgaWYgKCFvcHRpb25zLnNpbGVudCkge1xuICAgICAgY29uc29sZS5sb2coYFBhcnNpbmcgXCJ0ZXh0ZSBkZSBsb2lcIiAke3RleHRlTG9pUGF0aH3igKZgKVxuICAgIH1cbiAgICBjb25zdCB0ZXh0ZUxvaVBhZ2UgPSBmcy5yZWFkRmlsZVN5bmModGV4dGVMb2lQYXRoLCB7IGVuY29kaW5nOiBcInV0Zi04XCIgfSlcbiAgICBjb25zdCB0ZXh0ZUxvaVVybCA9IGBodHRwOi8vd3d3LmFzc2VtYmxlZS1uYXRpb25hbGUuZnIvJHtvcHRpb25zLmxlZ2lzbGF0dXJlfS90ZXh0ZXMvJHtmaWxlbmFtZX1gXG4gICAgY29uc3QgdGV4dGVMb2lQYXJzZWQgPSBwYXJzZVRleHRlTG9pKHRleHRlTG9pVXJsLCB0ZXh0ZUxvaVBhZ2UpXG4gICAgaWYgKG9wdGlvbnMuZmlsZW5hbWUgJiYgb3B0aW9ucy52ZXJib3NlKSB7XG4gICAgICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeSh0ZXh0ZUxvaVBhcnNlZC5zdWJkaXZpc2lvbnMsIG51bGwsIDIpKVxuICAgIH1cbiAgICBjb25zdCB7IGVycm9yIH0gPSB0ZXh0ZUxvaVBhcnNlZFxuICAgIGlmIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihcbiAgICAgICAgYCAgRXJyb3Igd2hpbGUgcGFyc2luZyBwYWdlIFwiJHt0ZXh0ZUxvaVBhdGh9XCI6XFxuXFxuRXJyb3I6XFxuJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICBlcnJvcixcbiAgICAgICAgICBudWxsLFxuICAgICAgICAgIDIsXG4gICAgICAgICl9YCxcbiAgICAgIClcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICB9XG5cbiAgLy8gZnMuZW5zdXJlRGlyU3luYyh0ZXh0ZXNMb2lzRGlyKVxuICAvLyBpZiAoIW9wdGlvbnMudWlkKSB7XG4gIC8vICAgZm9yIChjb25zdCBmaWxlbmFtZSBvZiBmcy5yZWFkZGlyU3luYyh0ZXh0ZXNMb2lzRGlyKSkge1xuICAvLyAgICAgaWYgKGZpbGVuYW1lWzBdID09PSBcIi5cIikge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgICAgZnMucmVtb3ZlU3luYyhwYXRoLmpvaW4odGV4dGVzTG9pc0RpciwgZmlsZW5hbWUpKVxuICAvLyAgIH1cbiAgLy8gfVxuXG4gIC8vIGNvbnN0IHRleHRlc0xvaXMgPSBPYmplY3QudmFsdWVzKGRvY3VtZW50QnlVaWQpXG4gIC8vICAgLmZpbHRlcihkb2N1bWVudCA9PiBkb2N1bWVudC54c2lUeXBlID09PSBUeXBlRG9jdW1lbnQuVGV4dGVMb2lUeXBlKVxuICAvLyAgIC5maWx0ZXIoXG4gIC8vICAgICBkb2N1bWVudCA9PiBkb2N1bWVudC51aWQuc3RhcnRzV2l0aChcIlBJT05BTlwiKSB8fCBkb2N1bWVudC51aWQuc3RhcnRzV2l0aChcIlBSSkxBTlwiKSxcbiAgLy8gICApXG4gIC8vICAgLm1hcChkb2N1bWVudCA9PiB7XG4gIC8vICAgICByZXR1cm4ge1xuICAvLyAgICAgICAuLi5kb2N1bWVudCxcbiAgLy8gICAgICAgcmF3RG9jdW1lbnRBc3NlbWJsZWVVcmw6IHVybEZyb21Eb2N1bWVudChkb2N1bWVudCwgRG9jdW1lbnRVcmxGb3JtYXQuUmF3SHRtbCksXG4gIC8vICAgICB9XG4gIC8vICAgfSlcbiAgLy8gICAuc29ydCgoYSwgYikgPT5cbiAgLy8gICAgIGEucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGxcbiAgLy8gICAgICAgPyAtMVxuICAvLyAgICAgICA6IGIucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGxcbiAgLy8gICAgICAgPyAxXG4gIC8vICAgICAgIDogYS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybC5sb2NhbGVDb21wYXJlKGIucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwpLFxuICAvLyAgIClcblxuICAvLyBjb25zdCBmaXJzdFVpZCA9IG9wdGlvbnMudWlkXG4gIC8vIGxldCBza2lwID0gISFmaXJzdFVpZFxuICAvLyBmb3IgKGNvbnN0IHRleHRlTG9pIG9mIHRleHRlc0xvaXMpIHtcbiAgLy8gICBpZiAoc2tpcCkge1xuICAvLyAgICAgaWYgKHRleHRlTG9pLnVpZCA9PT0gZmlyc3RVaWQpIHtcbiAgLy8gICAgICAgc2tpcCA9IGZhbHNlXG4gIC8vICAgICB9IGVsc2Uge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgIH1cbiAgLy8gICBpZiAoIW9wdGlvbnMuc2lsZW50KSB7XG4gIC8vICAgICBjb25zb2xlLmxvZyhcbiAgLy8gICAgICAgYFJldHJpZXZpbmcgYmlsbCAke3RleHRlTG9pLnVpZH0gYXQgJHt0ZXh0ZUxvaS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybH1gLFxuICAvLyAgICAgKVxuICAvLyAgIH1cbiAgLy8gICBpZiAodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwgPT09IG51bGwpIHtcbiAgLy8gICAgIGNvbnRpbnVlXG4gIC8vICAgfVxuICAvLyAgIGNvbnN0IHVybCA9IG5ldyBVUkwodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwpXG4gIC8vICAgY29uc3QgZmlsZVBhdGggPSBwYXRoLmpvaW4oZGF0YURpciwgdXJsLmhvc3RuYW1lLCAuLi51cmwucGF0aG5hbWUuc3BsaXQoXCIvXCIpKVxuICAvLyAgIGFzc2VydC5zdHJpY3RFcXVhbCh0ZXh0ZXNMb2lzRGlyLCBwYXRoLmRpcm5hbWUoZmlsZVBhdGgpKVxuXG4gIC8vICAgbGV0IHBhZ2UgPSB1bmRlZmluZWRcbiAgLy8gICB0cnkge1xuICAvLyAgICAgcGFnZSA9IGZzLnJlYWRGaWxlU3luYyhmaWxlUGF0aCwgeyBlbmNvZGluZzogXCJ1dGYtOFwiIH0pXG4gIC8vICAgfSBjYXRjaCAoZSkge1xuICAvLyAgICAgaWYgKGUuY29kZSA9PT0gXCJFTk9FTlRcIikge1xuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgICAgdGhyb3cgZVxuICAvLyAgIH1cblxuICAvLyAgIGlmIChvcHRpb25zLnBhcnNlKSB7XG4gIC8vICAgICBjb25zdCB0ZXh0ZUxvaVBhcnNlZCA9IHBhcnNlVGV4dGVMb2kodGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmwsIHBhZ2UpXG4gIC8vICAgICBjb25zdCB7IGVycm9yIH0gPSB0ZXh0ZUxvaVBhcnNlZFxuICAvLyAgICAgaWYgKGVycm9yKSB7XG4gIC8vICAgICAgIGNvbnNvbGUuZXJyb3IoXG4gIC8vICAgICAgICAgYEVycm9yIHdoaWxlIHBhcnNpbmcgcGFnZSBcIiR7dGV4dGVMb2kucmF3RG9jdW1lbnRBc3NlbWJsZWVVcmx9XCIgKHVpZDogJHtcbiAgLy8gICAgICAgICAgIHRleHRlTG9pLnVpZFxuICAvLyAgICAgICAgIH0pOlxcblxcbkVycm9yOlxcbiR7SlNPTi5zdHJpbmdpZnkoZXJyb3IsIG51bGwsIDIpfWAsXG4gIC8vICAgICAgIClcbiAgLy8gICAgICAgY29udGludWVcbiAgLy8gICAgIH1cbiAgLy8gICB9XG4gIC8vIH1cbiAgLy8gaWYgKG9wdGlvbnMuY29tbWl0KSB7XG4gIC8vICAgcmV0dXJuIGdpdC5jb21taXRBbmRQdXNoKHRleHRlc0xvaXNEaXIsIFwiTm91dmVsbGUgbW9pc3NvblwiLCBvcHRpb25zLnJlbW90ZSlcbiAgLy8gfVxuICByZXR1cm4gMFxufVxuXG5wcm9jZXNzLmV4aXQocGFyc2VUZXh0ZXNMb2lzKCkpXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLGdCQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxRQUFBLEdBQUFILHNCQUFBLENB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
@@ -1,140 +0,0 @@
1
- import assert from "assert";
2
- // import { execSync } from "child_process"
3
- import commandLineArgs from "command-line-args";
4
- import fs from "fs-extra";
5
- import path from "path";
6
-
7
- // import { EnabledDatasets } from "../datasets"
8
- // import { loadAssembleeData } from "../loaders"
9
- import { parseTexteLoi } from "../parsers/documents.mjs"; // import { Document, TypeDocument } from "../types/dossiers_legislatifs"
10
- // import { DocumentUrlFormat, urlFromDocument } from "../urls"
11
- import { commitOption, legislatureOption, remoteOption, silentOption, verboseOption, dataDirDefaultOption } from "./shared/cli_helpers.mjs";
12
- const optionsDefinitions = [commitOption, remoteOption, legislatureOption, silentOption, verboseOption, dataDirDefaultOption, {
13
- alias: "f",
14
- help: "Filename of Assemblée's document to parse",
15
- name: "filename",
16
- type: String
17
- }];
18
- const options = commandLineArgs(optionsDefinitions);
19
- function parseTextesLois() {
20
- assert(!options.commit || options.filename, 'Options "commit" & "filename" are incompatible');
21
- const dataDir = options.dataDir;
22
- // const { documentByUid } = loadAssembleeData(
23
- // dataDir,
24
- // EnabledDatasets.DossiersLegislatifs,
25
- // options.legislature,
26
- // )
27
-
28
- const textesLoisDir = path.join(dataDir, "www.assemblee-nationale.fr", options.legislature, "textes");
29
- for (const filename of fs.readdirSync(textesLoisDir)) {
30
- if (filename[0] === ".") {
31
- continue;
32
- }
33
- if (!filename.endsWith(".asp")) {
34
- continue;
35
- }
36
- if (options.filename && !filename.startsWith(options.filename)) {
37
- continue;
38
- }
39
- const texteLoiPath = path.join(textesLoisDir, filename);
40
- if (!options.silent) {
41
- console.log(`Parsing "texte de loi" ${texteLoiPath}…`);
42
- }
43
- const texteLoiPage = fs.readFileSync(texteLoiPath, {
44
- encoding: "utf-8"
45
- });
46
- const texteLoiUrl = `http://www.assemblee-nationale.fr/${options.legislature}/textes/${filename}`;
47
- const texteLoiParsed = parseTexteLoi(texteLoiUrl, texteLoiPage);
48
- if (options.filename && options.verbose) {
49
- console.log(JSON.stringify(texteLoiParsed.subdivisions, null, 2));
50
- }
51
- const {
52
- error
53
- } = texteLoiParsed;
54
- if (error) {
55
- console.error(` Error while parsing page "${texteLoiPath}":\n\nError:\n${JSON.stringify(error, null, 2)}`);
56
- continue;
57
- }
58
- }
59
-
60
- // fs.ensureDirSync(textesLoisDir)
61
- // if (!options.uid) {
62
- // for (const filename of fs.readdirSync(textesLoisDir)) {
63
- // if (filename[0] === ".") {
64
- // continue
65
- // }
66
- // fs.removeSync(path.join(textesLoisDir, filename))
67
- // }
68
- // }
69
-
70
- // const textesLois = Object.values(documentByUid)
71
- // .filter(document => document.xsiType === TypeDocument.TexteLoiType)
72
- // .filter(
73
- // document => document.uid.startsWith("PIONAN") || document.uid.startsWith("PRJLAN"),
74
- // )
75
- // .map(document => {
76
- // return {
77
- // ...document,
78
- // rawDocumentAssembleeUrl: urlFromDocument(document, DocumentUrlFormat.RawHtml),
79
- // }
80
- // })
81
- // .sort((a, b) =>
82
- // a.rawDocumentAssembleeUrl === null
83
- // ? -1
84
- // : b.rawDocumentAssembleeUrl === null
85
- // ? 1
86
- // : a.rawDocumentAssembleeUrl.localeCompare(b.rawDocumentAssembleeUrl),
87
- // )
88
-
89
- // const firstUid = options.uid
90
- // let skip = !!firstUid
91
- // for (const texteLoi of textesLois) {
92
- // if (skip) {
93
- // if (texteLoi.uid === firstUid) {
94
- // skip = false
95
- // } else {
96
- // continue
97
- // }
98
- // }
99
- // if (!options.silent) {
100
- // console.log(
101
- // `Retrieving bill ${texteLoi.uid} at ${texteLoi.rawDocumentAssembleeUrl}`,
102
- // )
103
- // }
104
- // if (texteLoi.rawDocumentAssembleeUrl === null) {
105
- // continue
106
- // }
107
- // const url = new URL(texteLoi.rawDocumentAssembleeUrl)
108
- // const filePath = path.join(dataDir, url.hostname, ...url.pathname.split("/"))
109
- // assert.strictEqual(textesLoisDir, path.dirname(filePath))
110
-
111
- // let page = undefined
112
- // try {
113
- // page = fs.readFileSync(filePath, { encoding: "utf-8" })
114
- // } catch (e) {
115
- // if (e.code === "ENOENT") {
116
- // continue
117
- // }
118
- // throw e
119
- // }
120
-
121
- // if (options.parse) {
122
- // const texteLoiParsed = parseTexteLoi(texteLoi.rawDocumentAssembleeUrl, page)
123
- // const { error } = texteLoiParsed
124
- // if (error) {
125
- // console.error(
126
- // `Error while parsing page "${texteLoi.rawDocumentAssembleeUrl}" (uid: ${
127
- // texteLoi.uid
128
- // }):\n\nError:\n${JSON.stringify(error, null, 2)}`,
129
- // )
130
- // continue
131
- // }
132
- // }
133
- // }
134
- // if (options.commit) {
135
- // return git.commitAndPush(textesLoisDir, "Nouvelle moisson", options.remote)
136
- // }
137
- return 0;
138
- }
139
- process.exit(parseTextesLois());
140
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhc3NlcnQiLCJjb21tYW5kTGluZUFyZ3MiLCJmcyIsInBhdGgiLCJwYXJzZVRleHRlTG9pIiwiY29tbWl0T3B0aW9uIiwibGVnaXNsYXR1cmVPcHRpb24iLCJyZW1vdGVPcHRpb24iLCJzaWxlbnRPcHRpb24iLCJ2ZXJib3NlT3B0aW9uIiwiZGF0YURpckRlZmF1bHRPcHRpb24iLCJvcHRpb25zRGVmaW5pdGlvbnMiLCJhbGlhcyIsImhlbHAiLCJuYW1lIiwidHlwZSIsIlN0cmluZyIsIm9wdGlvbnMiLCJwYXJzZVRleHRlc0xvaXMiLCJjb21taXQiLCJmaWxlbmFtZSIsImRhdGFEaXIiLCJ0ZXh0ZXNMb2lzRGlyIiwiam9pbiIsImxlZ2lzbGF0dXJlIiwicmVhZGRpclN5bmMiLCJlbmRzV2l0aCIsInN0YXJ0c1dpdGgiLCJ0ZXh0ZUxvaVBhdGgiLCJzaWxlbnQiLCJjb25zb2xlIiwibG9nIiwidGV4dGVMb2lQYWdlIiwicmVhZEZpbGVTeW5jIiwiZW5jb2RpbmciLCJ0ZXh0ZUxvaVVybCIsInRleHRlTG9pUGFyc2VkIiwidmVyYm9zZSIsIkpTT04iLCJzdHJpbmdpZnkiLCJzdWJkaXZpc2lvbnMiLCJlcnJvciIsInByb2Nlc3MiLCJleGl0Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvcGFyc2VfdGV4dGVzX2xvaXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGFzc2VydCBmcm9tIFwiYXNzZXJ0XCJcbi8vIGltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcImNoaWxkX3Byb2Nlc3NcIlxuaW1wb3J0IGNvbW1hbmRMaW5lQXJncyBmcm9tIFwiY29tbWFuZC1saW5lLWFyZ3NcIlxuaW1wb3J0IGZzIGZyb20gXCJmcy1leHRyYVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5cbi8vIGltcG9ydCB7IEVuYWJsZWREYXRhc2V0cyB9IGZyb20gXCIuLi9kYXRhc2V0c1wiXG4vLyBpbXBvcnQgeyBsb2FkQXNzZW1ibGVlRGF0YSB9IGZyb20gXCIuLi9sb2FkZXJzXCJcbmltcG9ydCB7IHBhcnNlVGV4dGVMb2kgfSBmcm9tIFwiLi4vcGFyc2Vycy9kb2N1bWVudHNcIlxuLy8gaW1wb3J0IHsgRG9jdW1lbnQsIFR5cGVEb2N1bWVudCB9IGZyb20gXCIuLi90eXBlcy9kb3NzaWVyc19sZWdpc2xhdGlmc1wiXG4vLyBpbXBvcnQgeyBEb2N1bWVudFVybEZvcm1hdCwgdXJsRnJvbURvY3VtZW50IH0gZnJvbSBcIi4uL3VybHNcIlxuaW1wb3J0IHtcbiAgY29tbWl0T3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgcmVtb3RlT3B0aW9uLFxuICBzaWxlbnRPcHRpb24sXG4gIHZlcmJvc2VPcHRpb24sXG4gIGRhdGFEaXJEZWZhdWx0T3B0aW9uLFxufSBmcm9tIFwiLi9zaGFyZWQvY2xpX2hlbHBlcnNcIlxuXG5jb25zdCBvcHRpb25zRGVmaW5pdGlvbnMgPSBbXG4gIGNvbW1pdE9wdGlvbixcbiAgcmVtb3RlT3B0aW9uLFxuICBsZWdpc2xhdHVyZU9wdGlvbixcbiAgc2lsZW50T3B0aW9uLFxuICB2ZXJib3NlT3B0aW9uLFxuICBkYXRhRGlyRGVmYXVsdE9wdGlvbixcbiAge1xuICAgIGFsaWFzOiBcImZcIixcbiAgICBoZWxwOiBcIkZpbGVuYW1lIG9mIEFzc2VtYmzDqWUncyBkb2N1bWVudCB0byBwYXJzZVwiLFxuICAgIG5hbWU6IFwiZmlsZW5hbWVcIixcbiAgICB0eXBlOiBTdHJpbmcsXG4gIH0sXG5dXG5jb25zdCBvcHRpb25zID0gY29tbWFuZExpbmVBcmdzKG9wdGlvbnNEZWZpbml0aW9ucylcblxuZnVuY3Rpb24gcGFyc2VUZXh0ZXNMb2lzKCk6IG51bWJlciB7XG4gIGFzc2VydChcbiAgICAhb3B0aW9ucy5jb21taXQgfHwgb3B0aW9ucy5maWxlbmFtZSxcbiAgICAnT3B0aW9ucyBcImNvbW1pdFwiICYgXCJmaWxlbmFtZVwiIGFyZSBpbmNvbXBhdGlibGUnLFxuICApXG5cbiAgY29uc3QgZGF0YURpciA9IG9wdGlvbnMuZGF0YURpclxuICAvLyBjb25zdCB7IGRvY3VtZW50QnlVaWQgfSA9IGxvYWRBc3NlbWJsZWVEYXRhKFxuICAvLyAgIGRhdGFEaXIsXG4gIC8vICAgRW5hYmxlZERhdGFzZXRzLkRvc3NpZXJzTGVnaXNsYXRpZnMsXG4gIC8vICAgb3B0aW9ucy5sZWdpc2xhdHVyZSxcbiAgLy8gKVxuXG4gIGNvbnN0IHRleHRlc0xvaXNEaXIgPSBwYXRoLmpvaW4oXG4gICAgZGF0YURpcixcbiAgICBcInd3dy5hc3NlbWJsZWUtbmF0aW9uYWxlLmZyXCIsXG4gICAgb3B0aW9ucy5sZWdpc2xhdHVyZSxcbiAgICBcInRleHRlc1wiLFxuICApXG4gIGZvciAoY29uc3QgZmlsZW5hbWUgb2YgZnMucmVhZGRpclN5bmModGV4dGVzTG9pc0RpcikpIHtcbiAgICBpZiAoZmlsZW5hbWVbMF0gPT09IFwiLlwiKSB7XG4gICAgICBjb250aW51ZVxuICAgIH1cbiAgICBpZiAoIWZpbGVuYW1lLmVuZHNXaXRoKFwiLmFzcFwiKSkge1xuICAgICAgY29udGludWVcbiAgICB9XG4gICAgaWYgKG9wdGlvbnMuZmlsZW5hbWUgJiYgIWZpbGVuYW1lLnN0YXJ0c1dpdGgob3B0aW9ucy5maWxlbmFtZSkpIHtcbiAgICAgIGNvbnRpbnVlXG4gICAgfVxuICAgIGNvbnN0IHRleHRlTG9pUGF0aCA9IHBhdGguam9pbih0ZXh0ZXNMb2lzRGlyLCBmaWxlbmFtZSlcbiAgICBpZiAoIW9wdGlvbnMuc2lsZW50KSB7XG4gICAgICBjb25zb2xlLmxvZyhgUGFyc2luZyBcInRleHRlIGRlIGxvaVwiICR7dGV4dGVMb2lQYXRofeKApmApXG4gICAgfVxuICAgIGNvbnN0IHRleHRlTG9pUGFnZSA9IGZzLnJlYWRGaWxlU3luYyh0ZXh0ZUxvaVBhdGgsIHsgZW5jb2Rpbmc6IFwidXRmLThcIiB9KVxuICAgIGNvbnN0IHRleHRlTG9pVXJsID0gYGh0dHA6Ly93d3cuYXNzZW1ibGVlLW5hdGlvbmFsZS5mci8ke29wdGlvbnMubGVnaXNsYXR1cmV9L3RleHRlcy8ke2ZpbGVuYW1lfWBcbiAgICBjb25zdCB0ZXh0ZUxvaVBhcnNlZCA9IHBhcnNlVGV4dGVMb2kodGV4dGVMb2lVcmwsIHRleHRlTG9pUGFnZSlcbiAgICBpZiAob3B0aW9ucy5maWxlbmFtZSAmJiBvcHRpb25zLnZlcmJvc2UpIHtcbiAgICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KHRleHRlTG9pUGFyc2VkLnN1YmRpdmlzaW9ucywgbnVsbCwgMikpXG4gICAgfVxuICAgIGNvbnN0IHsgZXJyb3IgfSA9IHRleHRlTG9pUGFyc2VkXG4gICAgaWYgKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKFxuICAgICAgICBgICBFcnJvciB3aGlsZSBwYXJzaW5nIHBhZ2UgXCIke3RleHRlTG9pUGF0aH1cIjpcXG5cXG5FcnJvcjpcXG4ke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICAgIGVycm9yLFxuICAgICAgICAgIG51bGwsXG4gICAgICAgICAgMixcbiAgICAgICAgKX1gLFxuICAgICAgKVxuICAgICAgY29udGludWVcbiAgICB9XG4gIH1cblxuICAvLyBmcy5lbnN1cmVEaXJTeW5jKHRleHRlc0xvaXNEaXIpXG4gIC8vIGlmICghb3B0aW9ucy51aWQpIHtcbiAgLy8gICBmb3IgKGNvbnN0IGZpbGVuYW1lIG9mIGZzLnJlYWRkaXJTeW5jKHRleHRlc0xvaXNEaXIpKSB7XG4gIC8vICAgICBpZiAoZmlsZW5hbWVbMF0gPT09IFwiLlwiKSB7XG4gIC8vICAgICAgIGNvbnRpbnVlXG4gIC8vICAgICB9XG4gIC8vICAgICBmcy5yZW1vdmVTeW5jKHBhdGguam9pbih0ZXh0ZXNMb2lzRGlyLCBmaWxlbmFtZSkpXG4gIC8vICAgfVxuICAvLyB9XG5cbiAgLy8gY29uc3QgdGV4dGVzTG9pcyA9IE9iamVjdC52YWx1ZXMoZG9jdW1lbnRCeVVpZClcbiAgLy8gICAuZmlsdGVyKGRvY3VtZW50ID0+IGRvY3VtZW50LnhzaVR5cGUgPT09IFR5cGVEb2N1bWVudC5UZXh0ZUxvaVR5cGUpXG4gIC8vICAgLmZpbHRlcihcbiAgLy8gICAgIGRvY3VtZW50ID0+IGRvY3VtZW50LnVpZC5zdGFydHNXaXRoKFwiUElPTkFOXCIpIHx8IGRvY3VtZW50LnVpZC5zdGFydHNXaXRoKFwiUFJKTEFOXCIpLFxuICAvLyAgIClcbiAgLy8gICAubWFwKGRvY3VtZW50ID0+IHtcbiAgLy8gICAgIHJldHVybiB7XG4gIC8vICAgICAgIC4uLmRvY3VtZW50LFxuICAvLyAgICAgICByYXdEb2N1bWVudEFzc2VtYmxlZVVybDogdXJsRnJvbURvY3VtZW50KGRvY3VtZW50LCBEb2N1bWVudFVybEZvcm1hdC5SYXdIdG1sKSxcbiAgLy8gICAgIH1cbiAgLy8gICB9KVxuICAvLyAgIC5zb3J0KChhLCBiKSA9PlxuICAvLyAgICAgYS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybCA9PT0gbnVsbFxuICAvLyAgICAgICA/IC0xXG4gIC8vICAgICAgIDogYi5yYXdEb2N1bWVudEFzc2VtYmxlZVVybCA9PT0gbnVsbFxuICAvLyAgICAgICA/IDFcbiAgLy8gICAgICAgOiBhLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsLmxvY2FsZUNvbXBhcmUoYi5yYXdEb2N1bWVudEFzc2VtYmxlZVVybCksXG4gIC8vICAgKVxuXG4gIC8vIGNvbnN0IGZpcnN0VWlkID0gb3B0aW9ucy51aWRcbiAgLy8gbGV0IHNraXAgPSAhIWZpcnN0VWlkXG4gIC8vIGZvciAoY29uc3QgdGV4dGVMb2kgb2YgdGV4dGVzTG9pcykge1xuICAvLyAgIGlmIChza2lwKSB7XG4gIC8vICAgICBpZiAodGV4dGVMb2kudWlkID09PSBmaXJzdFVpZCkge1xuICAvLyAgICAgICBza2lwID0gZmFsc2VcbiAgLy8gICAgIH0gZWxzZSB7XG4gIC8vICAgICAgIGNvbnRpbnVlXG4gIC8vICAgICB9XG4gIC8vICAgfVxuICAvLyAgIGlmICghb3B0aW9ucy5zaWxlbnQpIHtcbiAgLy8gICAgIGNvbnNvbGUubG9nKFxuICAvLyAgICAgICBgUmV0cmlldmluZyBiaWxsICR7dGV4dGVMb2kudWlkfSBhdCAke3RleHRlTG9pLnJhd0RvY3VtZW50QXNzZW1ibGVlVXJsfWAsXG4gIC8vICAgICApXG4gIC8vICAgfVxuICAvLyAgIGlmICh0ZXh0ZUxvaS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybCA9PT0gbnVsbCkge1xuICAvLyAgICAgY29udGludWVcbiAgLy8gICB9XG4gIC8vICAgY29uc3QgdXJsID0gbmV3IFVSTCh0ZXh0ZUxvaS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybClcbiAgLy8gICBjb25zdCBmaWxlUGF0aCA9IHBhdGguam9pbihkYXRhRGlyLCB1cmwuaG9zdG5hbWUsIC4uLnVybC5wYXRobmFtZS5zcGxpdChcIi9cIikpXG4gIC8vICAgYXNzZXJ0LnN0cmljdEVxdWFsKHRleHRlc0xvaXNEaXIsIHBhdGguZGlybmFtZShmaWxlUGF0aCkpXG5cbiAgLy8gICBsZXQgcGFnZSA9IHVuZGVmaW5lZFxuICAvLyAgIHRyeSB7XG4gIC8vICAgICBwYWdlID0gZnMucmVhZEZpbGVTeW5jKGZpbGVQYXRoLCB7IGVuY29kaW5nOiBcInV0Zi04XCIgfSlcbiAgLy8gICB9IGNhdGNoIChlKSB7XG4gIC8vICAgICBpZiAoZS5jb2RlID09PSBcIkVOT0VOVFwiKSB7XG4gIC8vICAgICAgIGNvbnRpbnVlXG4gIC8vICAgICB9XG4gIC8vICAgICB0aHJvdyBlXG4gIC8vICAgfVxuXG4gIC8vICAgaWYgKG9wdGlvbnMucGFyc2UpIHtcbiAgLy8gICAgIGNvbnN0IHRleHRlTG9pUGFyc2VkID0gcGFyc2VUZXh0ZUxvaSh0ZXh0ZUxvaS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybCwgcGFnZSlcbiAgLy8gICAgIGNvbnN0IHsgZXJyb3IgfSA9IHRleHRlTG9pUGFyc2VkXG4gIC8vICAgICBpZiAoZXJyb3IpIHtcbiAgLy8gICAgICAgY29uc29sZS5lcnJvcihcbiAgLy8gICAgICAgICBgRXJyb3Igd2hpbGUgcGFyc2luZyBwYWdlIFwiJHt0ZXh0ZUxvaS5yYXdEb2N1bWVudEFzc2VtYmxlZVVybH1cIiAodWlkOiAke1xuICAvLyAgICAgICAgICAgdGV4dGVMb2kudWlkXG4gIC8vICAgICAgICAgfSk6XFxuXFxuRXJyb3I6XFxuJHtKU09OLnN0cmluZ2lmeShlcnJvciwgbnVsbCwgMil9YCxcbiAgLy8gICAgICAgKVxuICAvLyAgICAgICBjb250aW51ZVxuICAvLyAgICAgfVxuICAvLyAgIH1cbiAgLy8gfVxuICAvLyBpZiAob3B0aW9ucy5jb21taXQpIHtcbiAgLy8gICByZXR1cm4gZ2l0LmNvbW1pdEFuZFB1c2godGV4dGVzTG9pc0RpciwgXCJOb3V2ZWxsZSBtb2lzc29uXCIsIG9wdGlvbnMucmVtb3RlKVxuICAvLyB9XG4gIHJldHVybiAwXG59XG5cbnByb2Nlc3MuZXhpdChwYXJzZVRleHRlc0xvaXMoKSlcbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsTUFBTSxNQUFNLFFBQVE7QUFDM0I7QUFDQSxPQUFPQyxlQUFlLE1BQU0sbUJBQW1CO0FBQy9DLE9BQU9DLEVBQUUsTUFBTSxVQUFVO0FBQ3pCLE9BQU9DLElBQUksTUFBTSxNQUFNOztBQUV2QjtBQUNBO0FBQUEsU0FDU0MsYUFBYSxvQ0FDdEI7QUFDQTtBQUFBLFNBRUVDLFlBQVksRUFDWkMsaUJBQWlCLEVBQ2pCQyxZQUFZLEVBQ1pDLFlBQVksRUFDWkMsYUFBYSxFQUNiQyxvQkFBb0I7QUFHdEIsTUFBTUMsa0JBQWtCLEdBQUcsQ0FDekJOLFlBQVksRUFDWkUsWUFBWSxFQUNaRCxpQkFBaUIsRUFDakJFLFlBQVksRUFDWkMsYUFBYSxFQUNiQyxvQkFBb0IsRUFDcEI7RUFDRUUsS0FBSyxFQUFFLEdBQUc7RUFDVkMsSUFBSSxFQUFFLDJDQUEyQztFQUNqREMsSUFBSSxFQUFFLFVBQVU7RUFDaEJDLElBQUksRUFBRUM7QUFDUixDQUFDLENBQ0Y7QUFDRCxNQUFNQyxPQUFPLEdBQUdoQixlQUFlLENBQUNVLGtCQUFrQixDQUFDO0FBRW5ELFNBQVNPLGVBQWVBLENBQUEsRUFBVztFQUNqQ2xCLE1BQU0sQ0FDSixDQUFDaUIsT0FBTyxDQUFDRSxNQUFNLElB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