@tricoteuses/senat 3.0.1 → 3.1.0

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 (568) hide show
  1. package/lib/src/ameli.d.ts +66 -0
  2. package/lib/src/ameli.js +1 -0
  3. package/lib/src/db_types/ameli.d.ts +1762 -0
  4. package/lib/src/db_types/ameli.js +1074 -0
  5. package/lib/src/db_types/debats.d.ts +380 -0
  6. package/lib/src/db_types/debats.js +266 -0
  7. package/lib/src/db_types/dosleg.d.ts +2954 -0
  8. package/lib/src/db_types/dosleg.js +2005 -0
  9. package/lib/src/db_types/questions.d.ts +699 -0
  10. package/lib/src/db_types/questions.js +493 -0
  11. package/lib/src/db_types/sens.d.ts +7843 -0
  12. package/lib/src/db_types/sens.js +4691 -0
  13. package/lib/src/debats.d.ts +38 -0
  14. package/lib/src/debats.js +1 -0
  15. package/lib/src/documents.d.ts +30 -0
  16. package/lib/src/documents.js +1 -0
  17. package/lib/src/dosleg.d.ts +142 -0
  18. package/lib/src/dosleg.js +193 -0
  19. package/lib/src/index.d.ts +41 -24
  20. package/lib/src/index.js +27 -6
  21. package/lib/src/kanel_types/ameli.d.ts +1762 -0
  22. package/lib/src/kanel_types/ameli.js +1074 -0
  23. package/lib/src/kanel_types/debats.d.ts +380 -0
  24. package/lib/src/kanel_types/debats.js +266 -0
  25. package/lib/src/kanel_types/dosleg.d.ts +2954 -0
  26. package/lib/src/kanel_types/dosleg.js +2005 -0
  27. package/lib/src/kanel_types/questions.d.ts +699 -0
  28. package/lib/src/kanel_types/questions.js +493 -0
  29. package/lib/src/kanel_types/sens.d.ts +7843 -0
  30. package/lib/src/kanel_types/sens.js +4691 -0
  31. package/lib/src/kysely/index.d.ts +216 -0
  32. package/lib/src/kysely/index.js +11 -0
  33. package/lib/src/kysely_types/ameli/Amd.d.ts +91 -0
  34. package/lib/src/kysely_types/ameli/Amd.js +3 -0
  35. package/lib/src/kysely_types/ameli/Amdsen.d.ts +24 -0
  36. package/lib/src/kysely_types/ameli/Amdsen.js +3 -0
  37. package/lib/src/kysely_types/ameli/Avicom.d.ts +14 -0
  38. package/lib/src/kysely_types/ameli/Avicom.js +3 -0
  39. package/lib/src/kysely_types/ameli/Avigvt.d.ts +14 -0
  40. package/lib/src/kysely_types/ameli/Avigvt.js +3 -0
  41. package/lib/src/kysely_types/ameli/Cab.d.ts +14 -0
  42. package/lib/src/kysely_types/ameli/Cab.js +3 -0
  43. package/lib/src/kysely_types/ameli/ComAmeli.d.ts +22 -0
  44. package/lib/src/kysely_types/ameli/ComAmeli.js +3 -0
  45. package/lib/src/kysely_types/ameli/Database.d.ts +3 -0
  46. package/lib/src/kysely_types/ameli/Database.js +3 -0
  47. package/lib/src/kysely_types/ameli/Ent.d.ts +14 -0
  48. package/lib/src/kysely_types/ameli/Ent.js +3 -0
  49. package/lib/src/kysely_types/ameli/Etatxt.d.ts +15 -0
  50. package/lib/src/kysely_types/ameli/Etatxt.js +3 -0
  51. package/lib/src/kysely_types/ameli/Fbu.d.ts +17 -0
  52. package/lib/src/kysely_types/ameli/Fbu.js +3 -0
  53. package/lib/src/kysely_types/ameli/GrppolAmeli.d.ts +20 -0
  54. package/lib/src/kysely_types/ameli/GrppolAmeli.js +3 -0
  55. package/lib/src/kysely_types/ameli/Gvt.d.ts +18 -0
  56. package/lib/src/kysely_types/ameli/Gvt.js +3 -0
  57. package/lib/src/kysely_types/ameli/Intora.d.ts +33 -0
  58. package/lib/src/kysely_types/ameli/Intora.js +3 -0
  59. package/lib/src/kysely_types/ameli/Irr.d.ts +21 -0
  60. package/lib/src/kysely_types/ameli/Irr.js +3 -0
  61. package/lib/src/kysely_types/ameli/LecAmeli.d.ts +14 -0
  62. package/lib/src/kysely_types/ameli/LecAmeli.js +3 -0
  63. package/lib/src/kysely_types/ameli/Mot.d.ts +20 -0
  64. package/lib/src/kysely_types/ameli/Mot.js +3 -0
  65. package/lib/src/kysely_types/ameli/Nat.d.ts +13 -0
  66. package/lib/src/kysely_types/ameli/Nat.js +3 -0
  67. package/lib/src/kysely_types/ameli/Orarol.d.ts +14 -0
  68. package/lib/src/kysely_types/ameli/Orarol.js +3 -0
  69. package/lib/src/kysely_types/ameli/Sai.d.ts +25 -0
  70. package/lib/src/kysely_types/ameli/Sai.js +3 -0
  71. package/lib/src/kysely_types/ameli/Saisen.d.ts +15 -0
  72. package/lib/src/kysely_types/ameli/Saisen.js +3 -0
  73. package/lib/src/kysely_types/ameli/Sea.d.ts +17 -0
  74. package/lib/src/kysely_types/ameli/Sea.js +3 -0
  75. package/lib/src/kysely_types/ameli/SenAmeli.d.ts +36 -0
  76. package/lib/src/kysely_types/ameli/SenAmeli.js +3 -0
  77. package/lib/src/kysely_types/ameli/SenatSchema.d.ts +60 -0
  78. package/lib/src/kysely_types/ameli/SenatSchema.js +3 -0
  79. package/lib/src/kysely_types/ameli/Ses.d.ts +17 -0
  80. package/lib/src/kysely_types/ameli/Ses.js +3 -0
  81. package/lib/src/kysely_types/ameli/Sor.d.ts +16 -0
  82. package/lib/src/kysely_types/ameli/Sor.js +3 -0
  83. package/lib/src/kysely_types/ameli/Sub.d.ts +44 -0
  84. package/lib/src/kysely_types/ameli/Sub.js +3 -0
  85. package/lib/src/kysely_types/ameli/TxtAmeli.d.ts +77 -0
  86. package/lib/src/kysely_types/ameli/TxtAmeli.js +3 -0
  87. package/lib/src/kysely_types/ameli/Typrect.d.ts +14 -0
  88. package/lib/src/kysely_types/ameli/Typrect.js +3 -0
  89. package/lib/src/kysely_types/ameli/Typses.d.ts +12 -0
  90. package/lib/src/kysely_types/ameli/Typses.js +3 -0
  91. package/lib/src/kysely_types/ameli/Typsub.d.ts +12 -0
  92. package/lib/src/kysely_types/ameli/Typsub.js +3 -0
  93. package/lib/src/kysely_types/ameli/WNivrec.d.ts +12 -0
  94. package/lib/src/kysely_types/ameli/WNivrec.js +3 -0
  95. package/lib/src/kysely_types/debats/Database.d.ts +3 -0
  96. package/lib/src/kysely_types/debats/Database.js +3 -0
  97. package/lib/src/kysely_types/debats/Debats.d.ts +25 -0
  98. package/lib/src/kysely_types/debats/Debats.js +3 -0
  99. package/lib/src/kysely_types/debats/Intdivers.d.ts +22 -0
  100. package/lib/src/kysely_types/debats/Intdivers.js +3 -0
  101. package/lib/src/kysely_types/debats/Intpjl.d.ts +22 -0
  102. package/lib/src/kysely_types/debats/Intpjl.js +3 -0
  103. package/lib/src/kysely_types/debats/Lecassdeb.d.ts +13 -0
  104. package/lib/src/kysely_types/debats/Lecassdeb.js +3 -0
  105. package/lib/src/kysely_types/debats/Secdis.d.ts +27 -0
  106. package/lib/src/kysely_types/debats/Secdis.js +3 -0
  107. package/lib/src/kysely_types/debats/Secdivers.d.ts +19 -0
  108. package/lib/src/kysely_types/debats/Secdivers.js +3 -0
  109. package/lib/src/kysely_types/debats/SenatSchema.d.ts +18 -0
  110. package/lib/src/kysely_types/debats/SenatSchema.js +3 -0
  111. package/lib/src/kysely_types/debats/Syndeb.d.ts +12 -0
  112. package/lib/src/kysely_types/debats/Syndeb.js +3 -0
  113. package/lib/src/kysely_types/debats/Typsec.d.ts +14 -0
  114. package/lib/src/kysely_types/debats/Typsec.js +3 -0
  115. package/lib/src/kysely_types/dosleg/Amescr.d.ts +13 -0
  116. package/lib/src/kysely_types/dosleg/Amescr.js +3 -0
  117. package/lib/src/kysely_types/dosleg/Ass.d.ts +12 -0
  118. package/lib/src/kysely_types/dosleg/Ass.js +3 -0
  119. package/lib/src/kysely_types/dosleg/Aud.d.ts +19 -0
  120. package/lib/src/kysely_types/dosleg/Aud.js +3 -0
  121. package/lib/src/kysely_types/dosleg/Auteur.d.ts +34 -0
  122. package/lib/src/kysely_types/dosleg/Auteur.js +3 -0
  123. package/lib/src/kysely_types/dosleg/Ble.d.ts +12 -0
  124. package/lib/src/kysely_types/dosleg/Ble.js +3 -0
  125. package/lib/src/kysely_types/dosleg/Catrap.d.ts +12 -0
  126. package/lib/src/kysely_types/dosleg/Catrap.js +3 -0
  127. package/lib/src/kysely_types/dosleg/Corscr.d.ts +17 -0
  128. package/lib/src/kysely_types/dosleg/Corscr.js +3 -0
  129. package/lib/src/kysely_types/dosleg/Database.d.ts +3 -0
  130. package/lib/src/kysely_types/dosleg/Database.js +3 -0
  131. package/lib/src/kysely_types/dosleg/DateSeance.d.ts +16 -0
  132. package/lib/src/kysely_types/dosleg/DateSeance.js +3 -0
  133. package/lib/src/kysely_types/dosleg/Deccoc.d.ts +12 -0
  134. package/lib/src/kysely_types/dosleg/Deccoc.js +3 -0
  135. package/lib/src/kysely_types/dosleg/Denrap.d.ts +26 -0
  136. package/lib/src/kysely_types/dosleg/Denrap.js +3 -0
  137. package/lib/src/kysely_types/dosleg/Doc.d.ts +33 -0
  138. package/lib/src/kysely_types/dosleg/Doc.js +3 -0
  139. package/lib/src/kysely_types/dosleg/Docatt.d.ts +16 -0
  140. package/lib/src/kysely_types/dosleg/Docatt.js +3 -0
  141. package/lib/src/kysely_types/dosleg/Docsea.d.ts +19 -0
  142. package/lib/src/kysely_types/dosleg/Docsea.js +3 -0
  143. package/lib/src/kysely_types/dosleg/Ecr.d.ts +26 -0
  144. package/lib/src/kysely_types/dosleg/Ecr.js +3 -0
  145. package/lib/src/kysely_types/dosleg/Etaloi.d.ts +12 -0
  146. package/lib/src/kysely_types/dosleg/Etaloi.js +3 -0
  147. package/lib/src/kysely_types/dosleg/Evtsea.d.ts +18 -0
  148. package/lib/src/kysely_types/dosleg/Evtsea.js +3 -0
  149. package/lib/src/kysely_types/dosleg/Forpub.d.ts +12 -0
  150. package/lib/src/kysely_types/dosleg/Forpub.js +3 -0
  151. package/lib/src/kysely_types/dosleg/Gen.d.ts +11 -0
  152. package/lib/src/kysely_types/dosleg/Gen.js +3 -0
  153. package/lib/src/kysely_types/dosleg/Lecass.d.ts +84 -0
  154. package/lib/src/kysely_types/dosleg/Lecass.js +3 -0
  155. package/lib/src/kysely_types/dosleg/Lecassrap.d.ts +15 -0
  156. package/lib/src/kysely_types/dosleg/Lecassrap.js +3 -0
  157. package/lib/src/kysely_types/dosleg/Lecture.d.ts +16 -0
  158. package/lib/src/kysely_types/dosleg/Lecture.js +3 -0
  159. package/lib/src/kysely_types/dosleg/Lnkrap.d.ts +16 -0
  160. package/lib/src/kysely_types/dosleg/Lnkrap.js +3 -0
  161. package/lib/src/kysely_types/dosleg/Loi.d.ts +93 -0
  162. package/lib/src/kysely_types/dosleg/Loi.js +3 -0
  163. package/lib/src/kysely_types/dosleg/Loithe.d.ts +13 -0
  164. package/lib/src/kysely_types/dosleg/Loithe.js +3 -0
  165. package/lib/src/kysely_types/dosleg/Natloi.d.ts +12 -0
  166. package/lib/src/kysely_types/dosleg/Natloi.js +3 -0
  167. package/lib/src/kysely_types/dosleg/Org.d.ts +48 -0
  168. package/lib/src/kysely_types/dosleg/Org.js +3 -0
  169. package/lib/src/kysely_types/dosleg/Orgnomhis.d.ts +28 -0
  170. package/lib/src/kysely_types/dosleg/Orgnomhis.js +3 -0
  171. package/lib/src/kysely_types/dosleg/Orippr.d.ts +12 -0
  172. package/lib/src/kysely_types/dosleg/Orippr.js +3 -0
  173. package/lib/src/kysely_types/dosleg/Oritxt.d.ts +25 -0
  174. package/lib/src/kysely_types/dosleg/Oritxt.js +3 -0
  175. package/lib/src/kysely_types/dosleg/Posvot.d.ts +12 -0
  176. package/lib/src/kysely_types/dosleg/Posvot.js +3 -0
  177. package/lib/src/kysely_types/dosleg/Qua.d.ts +16 -0
  178. package/lib/src/kysely_types/dosleg/Qua.js +3 -0
  179. package/lib/src/kysely_types/dosleg/Rap.d.ts +64 -0
  180. package/lib/src/kysely_types/dosleg/Rap.js +3 -0
  181. package/lib/src/kysely_types/dosleg/Raporg.d.ts +13 -0
  182. package/lib/src/kysely_types/dosleg/Raporg.js +3 -0
  183. package/lib/src/kysely_types/dosleg/Rapthe.d.ts +13 -0
  184. package/lib/src/kysely_types/dosleg/Rapthe.js +3 -0
  185. package/lib/src/kysely_types/dosleg/Rolsig.d.ts +12 -0
  186. package/lib/src/kysely_types/dosleg/Rolsig.js +3 -0
  187. package/lib/src/kysely_types/dosleg/Scr.d.ts +46 -0
  188. package/lib/src/kysely_types/dosleg/Scr.js +3 -0
  189. package/lib/src/kysely_types/dosleg/SenatSchema.d.ts +108 -0
  190. package/lib/src/kysely_types/dosleg/SenatSchema.js +3 -0
  191. package/lib/src/kysely_types/dosleg/Ses.d.ts +12 -0
  192. package/lib/src/kysely_types/dosleg/Ses.js +3 -0
  193. package/lib/src/kysely_types/dosleg/Stavot.d.ts +12 -0
  194. package/lib/src/kysely_types/dosleg/Stavot.js +3 -0
  195. package/lib/src/kysely_types/dosleg/Texte.d.ts +54 -0
  196. package/lib/src/kysely_types/dosleg/Texte.js +3 -0
  197. package/lib/src/kysely_types/dosleg/TexteAncien.d.ts +20 -0
  198. package/lib/src/kysely_types/dosleg/TexteAncien.js +3 -0
  199. package/lib/src/kysely_types/dosleg/The.d.ts +14 -0
  200. package/lib/src/kysely_types/dosleg/The.js +3 -0
  201. package/lib/src/kysely_types/dosleg/Titsen.d.ts +12 -0
  202. package/lib/src/kysely_types/dosleg/Titsen.js +3 -0
  203. package/lib/src/kysely_types/dosleg/Typatt.d.ts +12 -0
  204. package/lib/src/kysely_types/dosleg/Typatt.js +3 -0
  205. package/lib/src/kysely_types/dosleg/Typaut.d.ts +12 -0
  206. package/lib/src/kysely_types/dosleg/Typaut.js +3 -0
  207. package/lib/src/kysely_types/dosleg/Typdoc.d.ts +12 -0
  208. package/lib/src/kysely_types/dosleg/Typdoc.js +3 -0
  209. package/lib/src/kysely_types/dosleg/Typevtsea.d.ts +12 -0
  210. package/lib/src/kysely_types/dosleg/Typevtsea.js +3 -0
  211. package/lib/src/kysely_types/dosleg/Typlec.d.ts +14 -0
  212. package/lib/src/kysely_types/dosleg/Typlec.js +3 -0
  213. package/lib/src/kysely_types/dosleg/Typloi.d.ts +26 -0
  214. package/lib/src/kysely_types/dosleg/Typloi.js +3 -0
  215. package/lib/src/kysely_types/dosleg/Typorg.d.ts +20 -0
  216. package/lib/src/kysely_types/dosleg/Typorg.js +3 -0
  217. package/lib/src/kysely_types/dosleg/Typrap.d.ts +26 -0
  218. package/lib/src/kysely_types/dosleg/Typrap.js +3 -0
  219. package/lib/src/kysely_types/dosleg/Typtxt.d.ts +12 -0
  220. package/lib/src/kysely_types/dosleg/Typtxt.js +3 -0
  221. package/lib/src/kysely_types/dosleg/Typurl.d.ts +12 -0
  222. package/lib/src/kysely_types/dosleg/Typurl.js +3 -0
  223. package/lib/src/kysely_types/dosleg/Votsen.d.ts +25 -0
  224. package/lib/src/kysely_types/dosleg/Votsen.js +3 -0
  225. package/lib/src/kysely_types/questions/Database.d.ts +3 -0
  226. package/lib/src/kysely_types/questions/Database.js +3 -0
  227. package/lib/src/kysely_types/questions/Etatquestion.d.ts +14 -0
  228. package/lib/src/kysely_types/questions/Etatquestion.js +3 -0
  229. package/lib/src/kysely_types/questions/Legquestion.d.ts +18 -0
  230. package/lib/src/kysely_types/questions/Legquestion.js +3 -0
  231. package/lib/src/kysely_types/questions/Naturequestion.d.ts +15 -0
  232. package/lib/src/kysely_types/questions/Naturequestion.js +3 -0
  233. package/lib/src/kysely_types/questions/SenatSchema.d.ts +18 -0
  234. package/lib/src/kysely_types/questions/SenatSchema.js +3 -0
  235. package/lib/src/kysely_types/questions/Sortquestion.d.ts +14 -0
  236. package/lib/src/kysely_types/questions/Sortquestion.js +3 -0
  237. package/lib/src/kysely_types/questions/TamMinisteres.d.ts +28 -0
  238. package/lib/src/kysely_types/questions/TamMinisteres.js +3 -0
  239. package/lib/src/kysely_types/questions/TamQuestions.d.ts +124 -0
  240. package/lib/src/kysely_types/questions/TamQuestions.js +3 -0
  241. package/lib/src/kysely_types/questions/TamReponses.d.ts +32 -0
  242. package/lib/src/kysely_types/questions/TamReponses.js +3 -0
  243. package/lib/src/kysely_types/questions/The.d.ts +16 -0
  244. package/lib/src/kysely_types/questions/The.js +3 -0
  245. package/lib/src/kysely_types/sens/Activite.d.ts +34 -0
  246. package/lib/src/kysely_types/sens/Activite.js +3 -0
  247. package/lib/src/kysely_types/sens/ActiviteDelegation.d.ts +15 -0
  248. package/lib/src/kysely_types/sens/ActiviteDelegation.js +3 -0
  249. package/lib/src/kysely_types/sens/ActiviteLoi.d.ts +13 -0
  250. package/lib/src/kysely_types/sens/ActiviteLoi.js +3 -0
  251. package/lib/src/kysely_types/sens/ActiviteParticipant.d.ts +25 -0
  252. package/lib/src/kysely_types/sens/ActiviteParticipant.js +3 -0
  253. package/lib/src/kysely_types/sens/ActiviteSenateur.d.ts +21 -0
  254. package/lib/src/kysely_types/sens/ActiviteSenateur.js +3 -0
  255. package/lib/src/kysely_types/sens/ActivitesLiees.d.ts +10 -0
  256. package/lib/src/kysely_types/sens/ActivitesLiees.js +3 -0
  257. package/lib/src/kysely_types/sens/Actpro.d.ts +16 -0
  258. package/lib/src/kysely_types/sens/Actpro.js +3 -0
  259. package/lib/src/kysely_types/sens/Adresse.d.ts +39 -0
  260. package/lib/src/kysely_types/sens/Adresse.js +3 -0
  261. package/lib/src/kysely_types/sens/Asster.d.ts +18 -0
  262. package/lib/src/kysely_types/sens/Asster.js +3 -0
  263. package/lib/src/kysely_types/sens/Bur.d.ts +46 -0
  264. package/lib/src/kysely_types/sens/Bur.js +3 -0
  265. package/lib/src/kysely_types/sens/CategorieActivite.d.ts +13 -0
  266. package/lib/src/kysely_types/sens/CategorieActivite.js +3 -0
  267. package/lib/src/kysely_types/sens/Com.d.ts +48 -0
  268. package/lib/src/kysely_types/sens/Com.js +3 -0
  269. package/lib/src/kysely_types/sens/Csp.d.ts +22 -0
  270. package/lib/src/kysely_types/sens/Csp.js +3 -0
  271. package/lib/src/kysely_types/sens/Database.d.ts +3 -0
  272. package/lib/src/kysely_types/sens/Database.js +3 -0
  273. package/lib/src/kysely_types/sens/Delega.d.ts +46 -0
  274. package/lib/src/kysely_types/sens/Delega.js +3 -0
  275. package/lib/src/kysely_types/sens/Design.d.ts +33 -0
  276. package/lib/src/kysely_types/sens/Design.js +3 -0
  277. package/lib/src/kysely_types/sens/Designoep.d.ts +36 -0
  278. package/lib/src/kysely_types/sens/Designoep.js +3 -0
  279. package/lib/src/kysely_types/sens/Designorg.d.ts +39 -0
  280. package/lib/src/kysely_types/sens/Designorg.js +3 -0
  281. package/lib/src/kysely_types/sens/Dpt.d.ts +54 -0
  282. package/lib/src/kysely_types/sens/Dpt.js +3 -0
  283. package/lib/src/kysely_types/sens/Dptele.d.ts +35 -0
  284. package/lib/src/kysely_types/sens/Dptele.js +3 -0
  285. package/lib/src/kysely_types/sens/Dpttypman.d.ts +14 -0
  286. package/lib/src/kysely_types/sens/Dpttypman.js +3 -0
  287. package/lib/src/kysely_types/sens/Ele.d.ts +35 -0
  288. package/lib/src/kysely_types/sens/Ele.js +3 -0
  289. package/lib/src/kysely_types/sens/Elucan.d.ts +50 -0
  290. package/lib/src/kysely_types/sens/Elucan.js +3 -0
  291. package/lib/src/kysely_types/sens/Eludep.d.ts +49 -0
  292. package/lib/src/kysely_types/sens/Eludep.js +3 -0
  293. package/lib/src/kysely_types/sens/Eludiv.d.ts +47 -0
  294. package/lib/src/kysely_types/sens/Eludiv.js +3 -0
  295. package/lib/src/kysely_types/sens/Elueur.d.ts +47 -0
  296. package/lib/src/kysely_types/sens/Elueur.js +3 -0
  297. package/lib/src/kysely_types/sens/Elureg.d.ts +48 -0
  298. package/lib/src/kysely_types/sens/Elureg.js +3 -0
  299. package/lib/src/kysely_types/sens/Elusen.d.ts +52 -0
  300. package/lib/src/kysely_types/sens/Elusen.js +3 -0
  301. package/lib/src/kysely_types/sens/Eluter.d.ts +47 -0
  302. package/lib/src/kysely_types/sens/Eluter.js +3 -0
  303. package/lib/src/kysely_types/sens/Elutit.d.ts +38 -0
  304. package/lib/src/kysely_types/sens/Elutit.js +3 -0
  305. package/lib/src/kysely_types/sens/Eluvil.d.ts +48 -0
  306. package/lib/src/kysely_types/sens/Eluvil.js +3 -0
  307. package/lib/src/kysely_types/sens/Etadebman.d.ts +34 -0
  308. package/lib/src/kysely_types/sens/Etadebman.js +3 -0
  309. package/lib/src/kysely_types/sens/Etafinman.d.ts +34 -0
  310. package/lib/src/kysely_types/sens/Etafinman.js +3 -0
  311. package/lib/src/kysely_types/sens/Etasen.d.ts +34 -0
  312. package/lib/src/kysely_types/sens/Etasen.js +3 -0
  313. package/lib/src/kysely_types/sens/FonactParticipant.d.ts +16 -0
  314. package/lib/src/kysely_types/sens/FonactParticipant.js +3 -0
  315. package/lib/src/kysely_types/sens/Foncom.d.ts +40 -0
  316. package/lib/src/kysely_types/sens/Foncom.js +3 -0
  317. package/lib/src/kysely_types/sens/Fondelega.d.ts +40 -0
  318. package/lib/src/kysely_types/sens/Fondelega.js +3 -0
  319. package/lib/src/kysely_types/sens/Fongrppol.d.ts +40 -0
  320. package/lib/src/kysely_types/sens/Fongrppol.js +3 -0
  321. package/lib/src/kysely_types/sens/Fongrpsen.d.ts +27 -0
  322. package/lib/src/kysely_types/sens/Fongrpsen.js +3 -0
  323. package/lib/src/kysely_types/sens/Fonmemcom.d.ts +37 -0
  324. package/lib/src/kysely_types/sens/Fonmemcom.js +3 -0
  325. package/lib/src/kysely_types/sens/Fonmemdelega.d.ts +37 -0
  326. package/lib/src/kysely_types/sens/Fonmemdelega.js +3 -0
  327. package/lib/src/kysely_types/sens/Fonmemgrppol.d.ts +35 -0
  328. package/lib/src/kysely_types/sens/Fonmemgrppol.js +3 -0
  329. package/lib/src/kysely_types/sens/Fonmemgrpsen.d.ts +32 -0
  330. package/lib/src/kysely_types/sens/Fonmemgrpsen.js +3 -0
  331. package/lib/src/kysely_types/sens/Fonmemorg.d.ts +41 -0
  332. package/lib/src/kysely_types/sens/Fonmemorg.js +3 -0
  333. package/lib/src/kysely_types/sens/Fonorg.d.ts +40 -0
  334. package/lib/src/kysely_types/sens/Fonorg.js +3 -0
  335. package/lib/src/kysely_types/sens/Grppol.d.ts +46 -0
  336. package/lib/src/kysely_types/sens/Grppol.js +3 -0
  337. package/lib/src/kysely_types/sens/Grpsenami.d.ts +55 -0
  338. package/lib/src/kysely_types/sens/Grpsenami.js +3 -0
  339. package/lib/src/kysely_types/sens/Libcom.d.ts +36 -0
  340. package/lib/src/kysely_types/sens/Libcom.js +3 -0
  341. package/lib/src/kysely_types/sens/Libdelega.d.ts +34 -0
  342. package/lib/src/kysely_types/sens/Libdelega.js +3 -0
  343. package/lib/src/kysely_types/sens/Libgrppol.d.ts +36 -0
  344. package/lib/src/kysely_types/sens/Libgrppol.js +3 -0
  345. package/lib/src/kysely_types/sens/Libgrpsen.d.ts +28 -0
  346. package/lib/src/kysely_types/sens/Libgrpsen.js +3 -0
  347. package/lib/src/kysely_types/sens/Liborg.d.ts +34 -0
  348. package/lib/src/kysely_types/sens/Liborg.js +3 -0
  349. package/lib/src/kysely_types/sens/Mel.d.ts +19 -0
  350. package/lib/src/kysely_types/sens/Mel.js +3 -0
  351. package/lib/src/kysely_types/sens/Memcom.d.ts +37 -0
  352. package/lib/src/kysely_types/sens/Memcom.js +3 -0
  353. package/lib/src/kysely_types/sens/Memdelega.d.ts +38 -0
  354. package/lib/src/kysely_types/sens/Memdelega.js +3 -0
  355. package/lib/src/kysely_types/sens/Memextpar.d.ts +56 -0
  356. package/lib/src/kysely_types/sens/Memextpar.js +3 -0
  357. package/lib/src/kysely_types/sens/Memgrppol.d.ts +38 -0
  358. package/lib/src/kysely_types/sens/Memgrppol.js +3 -0
  359. package/lib/src/kysely_types/sens/Memgrpsen.d.ts +30 -0
  360. package/lib/src/kysely_types/sens/Memgrpsen.js +3 -0
  361. package/lib/src/kysely_types/sens/Memorg.d.ts +42 -0
  362. package/lib/src/kysely_types/sens/Memorg.js +3 -0
  363. package/lib/src/kysely_types/sens/Minind.d.ts +46 -0
  364. package/lib/src/kysely_types/sens/Minind.js +3 -0
  365. package/lib/src/kysely_types/sens/Mismin.d.ts +17 -0
  366. package/lib/src/kysely_types/sens/Mismin.js +3 -0
  367. package/lib/src/kysely_types/sens/Missen.d.ts +17 -0
  368. package/lib/src/kysely_types/sens/Missen.js +3 -0
  369. package/lib/src/kysely_types/sens/Moddes.d.ts +30 -0
  370. package/lib/src/kysely_types/sens/Moddes.js +3 -0
  371. package/lib/src/kysely_types/sens/Nation.d.ts +26 -0
  372. package/lib/src/kysely_types/sens/Nation.js +3 -0
  373. package/lib/src/kysely_types/sens/Nationgrpsen.d.ts +31 -0
  374. package/lib/src/kysely_types/sens/Nationgrpsen.js +3 -0
  375. package/lib/src/kysely_types/sens/Org.d.ts +46 -0
  376. package/lib/src/kysely_types/sens/Org.js +3 -0
  377. package/lib/src/kysely_types/sens/Orgext.d.ts +72 -0
  378. package/lib/src/kysely_types/sens/Orgext.js +3 -0
  379. package/lib/src/kysely_types/sens/Orgthe.d.ts +12 -0
  380. package/lib/src/kysely_types/sens/Orgthe.js +3 -0
  381. package/lib/src/kysely_types/sens/Pcs.d.ts +15 -0
  382. package/lib/src/kysely_types/sens/Pcs.js +3 -0
  383. package/lib/src/kysely_types/sens/Pcs24.d.ts +15 -0
  384. package/lib/src/kysely_types/sens/Pcs24.js +3 -0
  385. package/lib/src/kysely_types/sens/Pcs42.d.ts +15 -0
  386. package/lib/src/kysely_types/sens/Pcs42.js +3 -0
  387. package/lib/src/kysely_types/sens/Pcs8.d.ts +12 -0
  388. package/lib/src/kysely_types/sens/Pcs8.js +3 -0
  389. package/lib/src/kysely_types/sens/Pcscatpro.d.ts +15 -0
  390. package/lib/src/kysely_types/sens/Pcscatpro.js +3 -0
  391. package/lib/src/kysely_types/sens/Poicon.d.ts +20 -0
  392. package/lib/src/kysely_types/sens/Poicon.js +3 -0
  393. package/lib/src/kysely_types/sens/Qua.d.ts +30 -0
  394. package/lib/src/kysely_types/sens/Qua.js +3 -0
  395. package/lib/src/kysely_types/sens/Reg.d.ts +38 -0
  396. package/lib/src/kysely_types/sens/Reg.js +3 -0
  397. package/lib/src/kysely_types/sens/Sen.d.ts +66 -0
  398. package/lib/src/kysely_types/sens/Sen.js +3 -0
  399. package/lib/src/kysely_types/sens/SenatSchema.d.ts +198 -0
  400. package/lib/src/kysely_types/sens/SenatSchema.js +3 -0
  401. package/lib/src/kysely_types/sens/Senbur.d.ts +41 -0
  402. package/lib/src/kysely_types/sens/Senbur.js +3 -0
  403. package/lib/src/kysely_types/sens/Sennom.d.ts +32 -0
  404. package/lib/src/kysely_types/sens/Sennom.js +3 -0
  405. package/lib/src/kysely_types/sens/Senurl.d.ts +35 -0
  406. package/lib/src/kysely_types/sens/Senurl.js +3 -0
  407. package/lib/src/kysely_types/sens/Stajur.d.ts +19 -0
  408. package/lib/src/kysely_types/sens/Stajur.js +3 -0
  409. package/lib/src/kysely_types/sens/Telephone.d.ts +21 -0
  410. package/lib/src/kysely_types/sens/Telephone.js +3 -0
  411. package/lib/src/kysely_types/sens/Temval.d.ts +14 -0
  412. package/lib/src/kysely_types/sens/Temval.js +3 -0
  413. package/lib/src/kysely_types/sens/Territ.d.ts +25 -0
  414. package/lib/src/kysely_types/sens/Territ.js +3 -0
  415. package/lib/src/kysely_types/sens/Titele.d.ts +32 -0
  416. package/lib/src/kysely_types/sens/Titele.js +3 -0
  417. package/lib/src/kysely_types/sens/Typadr.d.ts +20 -0
  418. package/lib/src/kysely_types/sens/Typadr.js +3 -0
  419. package/lib/src/kysely_types/sens/Typapppol.d.ts +34 -0
  420. package/lib/src/kysely_types/sens/Typapppol.js +3 -0
  421. package/lib/src/kysely_types/sens/Typbister.d.ts +16 -0
  422. package/lib/src/kysely_types/sens/Typbister.js +3 -0
  423. package/lib/src/kysely_types/sens/TypeActivite.d.ts +11 -0
  424. package/lib/src/kysely_types/sens/TypeActivite.js +3 -0
  425. package/lib/src/kysely_types/sens/TypeActiviteParticipant.d.ts +10 -0
  426. package/lib/src/kysely_types/sens/TypeActiviteParticipant.js +3 -0
  427. package/lib/src/kysely_types/sens/TypeActiviteSenateur.d.ts +11 -0
  428. package/lib/src/kysely_types/sens/TypeActiviteSenateur.js +3 -0
  429. package/lib/src/kysely_types/sens/TypeCategorie.d.ts +11 -0
  430. package/lib/src/kysely_types/sens/TypeCategorie.js +3 -0
  431. package/lib/src/kysely_types/sens/Typele.d.ts +22 -0
  432. package/lib/src/kysely_types/sens/Typele.js +3 -0
  433. package/lib/src/kysely_types/sens/Typgrpsen.d.ts +23 -0
  434. package/lib/src/kysely_types/sens/Typgrpsen.js +3 -0
  435. package/lib/src/kysely_types/sens/Typman.d.ts +20 -0
  436. package/lib/src/kysely_types/sens/Typman.js +3 -0
  437. package/lib/src/kysely_types/sens/Typorg.d.ts +26 -0
  438. package/lib/src/kysely_types/sens/Typorg.js +3 -0
  439. package/lib/src/kysely_types/sens/Typurl.d.ts +31 -0
  440. package/lib/src/kysely_types/sens/Typurl.js +3 -0
  441. package/lib/src/kysely_types/sens/Typvoi.d.ts +16 -0
  442. package/lib/src/kysely_types/sens/Typvoi.js +3 -0
  443. package/lib/src/kysely_types/sens/Zongeo.d.ts +22 -0
  444. package/lib/src/kysely_types/sens/Zongeo.js +3 -0
  445. package/lib/src/loaders.d.ts +3 -3
  446. package/lib/src/loaders.js +1 -1
  447. package/lib/src/model/agenda.d.ts +1 -1
  448. package/lib/src/model/commission.d.ts +2 -2
  449. package/lib/src/model/seance.d.ts +1 -1
  450. package/lib/src/other_types/agenda.d.ts +45 -0
  451. package/lib/src/other_types/agenda.js +1 -0
  452. package/lib/src/other_types/compte_rendu.d.ts +83 -0
  453. package/lib/src/other_types/compte_rendu.js +1 -0
  454. package/lib/src/other_types/questions.d.ts +2 -0
  455. package/lib/src/other_types/questions.js +1 -0
  456. package/lib/src/other_types/sens.d.ts +8 -0
  457. package/lib/src/other_types/sens.js +1 -0
  458. package/lib/src/other_types/sessions.d.ts +6 -0
  459. package/lib/src/other_types/sessions.js +19 -0
  460. package/lib/src/other_types/texte.d.ts +72 -0
  461. package/lib/src/other_types/texte.js +15 -0
  462. package/lib/src/parsers/texte.d.ts +1 -1
  463. package/lib/src/parsers/texte.js +1 -1
  464. package/lib/src/questions.d.ts +53 -0
  465. package/lib/src/questions.js +1 -0
  466. package/lib/src/rich_types/agenda.d.ts +45 -0
  467. package/lib/src/rich_types/agenda.js +1 -0
  468. package/lib/src/rich_types/ameli.d.ts +70 -0
  469. package/lib/src/rich_types/ameli.js +1 -0
  470. package/lib/src/rich_types/compte_rendu.d.ts +83 -0
  471. package/lib/src/rich_types/compte_rendu.js +1 -0
  472. package/lib/src/rich_types/debats.d.ts +38 -0
  473. package/lib/src/rich_types/debats.js +1 -0
  474. package/lib/src/rich_types/dosleg.d.ts +212 -0
  475. package/lib/src/rich_types/dosleg.js +193 -0
  476. package/lib/src/rich_types/questions.d.ts +55 -0
  477. package/lib/src/rich_types/questions.js +1 -0
  478. package/lib/src/rich_types/sens.d.ts +104 -0
  479. package/lib/src/rich_types/sens.js +1 -0
  480. package/lib/src/rich_types/sessions.d.ts +6 -0
  481. package/lib/src/rich_types/sessions.js +19 -0
  482. package/lib/src/rich_types/texte.d.ts +72 -0
  483. package/lib/src/rich_types/texte.js +15 -0
  484. package/lib/src/schemas/config.d.ts +9 -0
  485. package/lib/src/schemas/config.js +10 -0
  486. package/lib/src/scripts/convert_data.js +6 -6
  487. package/lib/src/scripts/convert_xml_to_html.js +1 -1
  488. package/lib/src/scripts/datautil.d.ts +1 -1
  489. package/lib/src/scripts/retrieve_agenda.js +4 -4
  490. package/lib/src/scripts/retrieve_cr_commission.js +6 -6
  491. package/lib/src/scripts/retrieve_cr_seance.d.ts +1 -1
  492. package/lib/src/scripts/retrieve_cr_seance.js +4 -4
  493. package/lib/src/scripts/retrieve_documents.d.ts +1 -1
  494. package/lib/src/scripts/retrieve_documents.js +4 -4
  495. package/lib/src/scripts/retrieve_open_data.js +73 -9
  496. package/lib/src/scripts/retrieve_senateurs_photos.js +2 -2
  497. package/lib/src/scripts/retrieve_videos.js +3 -3
  498. package/lib/src/scripts/shared/incremental_import_sql.js +22 -7
  499. package/lib/src/scripts/shared/make_generate_zod_schemas.d.ts +20 -0
  500. package/lib/src/scripts/shared/make_generate_zod_schemas.js +300 -0
  501. package/lib/src/scripts/shared/prefixed_tables.d.ts +2 -1
  502. package/lib/src/scripts/shared/prefixed_tables.js +4 -3
  503. package/lib/src/scripts/shared/staging_import.d.ts +1 -1
  504. package/lib/src/scripts/validate_prefixed_tables.js +12 -11
  505. package/lib/src/scrutins.d.ts +47 -0
  506. package/lib/src/scrutins.js +1 -0
  507. package/lib/src/sens.d.ts +104 -0
  508. package/lib/src/sens.js +1 -0
  509. package/lib/src/server/agenda.d.ts +6 -0
  510. package/lib/src/server/agenda.js +148 -0
  511. package/lib/src/server/ameli.d.ts +2 -0
  512. package/lib/src/server/ameli.js +153 -0
  513. package/lib/src/server/commission.d.ts +19 -0
  514. package/lib/src/server/commission.js +269 -0
  515. package/lib/src/server/config.d.ts +43 -0
  516. package/lib/src/server/config.js +37 -0
  517. package/lib/src/server/conversion_textes.d.ts +11 -0
  518. package/lib/src/server/conversion_textes.js +320 -0
  519. package/lib/src/server/databases_postgres.d.ts +32 -0
  520. package/lib/src/server/databases_postgres.js +50 -0
  521. package/lib/src/server/datasets.d.ts +38 -0
  522. package/lib/src/server/datasets.js +247 -0
  523. package/lib/src/server/debats.d.ts +2 -0
  524. package/lib/src/server/debats.js +98 -0
  525. package/lib/src/server/documents.d.ts +3 -0
  526. package/lib/src/server/documents.js +132 -0
  527. package/lib/src/server/dosleg.d.ts +2 -0
  528. package/lib/src/server/dosleg.js +228 -0
  529. package/lib/src/server/git.d.ts +27 -0
  530. package/lib/src/server/git.js +251 -0
  531. package/lib/src/server/index.d.ts +18 -0
  532. package/lib/src/server/index.js +16 -0
  533. package/lib/src/server/loaders.d.ts +52 -0
  534. package/lib/src/server/loaders.js +260 -0
  535. package/lib/src/server/questions.d.ts +2 -0
  536. package/lib/src/server/questions.js +89 -0
  537. package/lib/src/server/scrutins.d.ts +2 -0
  538. package/lib/src/server/scrutins.js +114 -0
  539. package/lib/src/server/seance.d.ts +3 -0
  540. package/lib/src/server/seance.js +267 -0
  541. package/lib/src/server/sens.d.ts +9 -0
  542. package/lib/src/server/sens.js +353 -0
  543. package/lib/src/types/ameli.d.ts +1761 -4
  544. package/lib/src/types/ameli.js +1074 -1
  545. package/lib/src/types/debats.d.ts +380 -2
  546. package/lib/src/types/debats.js +266 -1
  547. package/lib/src/types/dosleg.d.ts +2953 -69
  548. package/lib/src/types/dosleg.js +2005 -1
  549. package/lib/src/types/questions.d.ts +699 -2
  550. package/lib/src/types/questions.js +493 -1
  551. package/lib/src/types/sens.d.ts +7842 -7
  552. package/lib/src/types/sens.js +4691 -1
  553. package/lib/src/util.d.ts +1 -0
  554. package/lib/src/util.js +15 -0
  555. package/lib/src/utils/cr_spliting.d.ts +1 -1
  556. package/lib/src/utils/cr_spliting.js +2 -2
  557. package/lib/src/utils/reunion_odj_building.d.ts +2 -2
  558. package/lib/src/utils/reunion_odj_building.js +2 -2
  559. package/lib/src/utils/reunion_parsing.d.ts +2 -2
  560. package/lib/src/utils/scoring.d.ts +1 -1
  561. package/lib/src/videos/match.d.ts +1 -1
  562. package/lib/src/videos/pipeline.d.ts +1 -1
  563. package/lib/src/videos/pipeline.js +1 -1
  564. package/lib/src/videos/search.d.ts +1 -1
  565. package/lib/tests/test_iter_load.test.js +1 -1
  566. package/lib/tests/validatePrefixedTables.test.js +1 -1
  567. package/lib/tsconfig.tsbuildinfo +1 -0
  568. package/package.json +11 -7
@@ -0,0 +1,32 @@
1
+ import { Kysely, sql as kyselySql, type CompiledQuery } from "kysely";
2
+ import type AmeliDatabase from "../kysely_types/ameli/Database.js";
3
+ import type DebatsDatabase from "../kysely_types/debats/Database.js";
4
+ import type DoslegDatabase from "../kysely_types/dosleg/Database.js";
5
+ import type QuestionsDatabase from "../kysely_types/questions/Database.js";
6
+ import type SensDatabase from "../kysely_types/sens/Database.js";
7
+ /** Merged Kysely database type covering all senat sub-schemas. */
8
+ export type SenatDatabase = AmeliDatabase & DebatsDatabase & DoslegDatabase & QuestionsDatabase & SensDatabase;
9
+ /**
10
+ * Fully-typed Kysely database connection.
11
+ * Tables must be referenced through the "senat" schema, e.g. in raw sql:
12
+ * `sql\`select * from senat.sens_sen\``
13
+ * or using the query builder:
14
+ * `db.withSchema("senat").selectFrom("sens_sen")`
15
+ */
16
+ export declare const db: Kysely<SenatDatabase>;
17
+ /**
18
+ * Streams the result of a raw Kysely compiled query, yielding one row at a time.
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * import { db, streamRawQuery } from "./databases_postgres.js"
23
+ * import { sql } from "kysely"
24
+ *
25
+ * const query = sql<{ senmat: string }>`select senmat from senat.sens_sen`
26
+ * for await (const row of streamRawQuery<{ senmat: string }>(query.compile(db))) {
27
+ * console.log(row.senmat)
28
+ * }
29
+ * ```
30
+ */
31
+ export declare function streamRawQuery<T>(compiledQuery: CompiledQuery, batchSize?: number): AsyncGenerator<T, void, unknown>;
32
+ export { kyselySql as sql };
@@ -0,0 +1,50 @@
1
+ import { Pool } from "pg";
2
+ import { Kysely, PostgresDialect, sql as kyselySql } from "kysely";
3
+ import config from "./config.js";
4
+ // ---------------------------------------------------------------------------
5
+ // Kysely instance (uses pg driver so .stream() is available)
6
+ // ---------------------------------------------------------------------------
7
+ const pool = new Pool({
8
+ database: config.db.name,
9
+ host: config.db.host,
10
+ password: config.db.password,
11
+ port: config.db.port,
12
+ user: config.db.user,
13
+ });
14
+ /**
15
+ * Fully-typed Kysely database connection.
16
+ * Tables must be referenced through the "senat" schema, e.g. in raw sql:
17
+ * `sql\`select * from senat.sens_sen\``
18
+ * or using the query builder:
19
+ * `db.withSchema("senat").selectFrom("sens_sen")`
20
+ */
21
+ export const db = new Kysely({
22
+ dialect: new PostgresDialect({ pool }),
23
+ });
24
+ // ---------------------------------------------------------------------------
25
+ // Streaming helper
26
+ // ---------------------------------------------------------------------------
27
+ /**
28
+ * Streams the result of a raw Kysely compiled query, yielding one row at a time.
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * import { db, streamRawQuery } from "./databases_postgres.js"
33
+ * import { sql } from "kysely"
34
+ *
35
+ * const query = sql<{ senmat: string }>`select senmat from senat.sens_sen`
36
+ * for await (const row of streamRawQuery<{ senmat: string }>(query.compile(db))) {
37
+ * console.log(row.senmat)
38
+ * }
39
+ * ```
40
+ */
41
+ export async function* streamRawQuery(compiledQuery, batchSize = 100) {
42
+ const stream = db.getExecutor().stream(compiledQuery, batchSize);
43
+ for await (const chunk of stream) {
44
+ for (const row of chunk.rows) {
45
+ yield row;
46
+ }
47
+ }
48
+ }
49
+ // Re-export Kysely's sql tag for convenience.
50
+ export { kyselySql as sql };
@@ -0,0 +1,38 @@
1
+ export interface Dataset {
2
+ database: string;
3
+ repairEncoding: boolean;
4
+ repairZip?: (dataset: Dataset, dataDir: string) => void;
5
+ title: string;
6
+ url: string;
7
+ indexes?: {
8
+ [table: string]: Array<{
9
+ name: string;
10
+ columns: string[];
11
+ }>;
12
+ };
13
+ mergeKeys?: {
14
+ [table: string]: string[];
15
+ };
16
+ rowMultisetMergeTables?: string[];
17
+ }
18
+ export interface Datasets {
19
+ ameli: Dataset;
20
+ debats: Dataset;
21
+ dosleg: Dataset;
22
+ questions: Dataset;
23
+ sens: Dataset;
24
+ }
25
+ export declare enum EnabledDatasets {
26
+ None = 0,
27
+ Ameli = 1,
28
+ Debats = 2,
29
+ DosLeg = 4,
30
+ Questions = 8,
31
+ Sens = 16,
32
+ PhotosSenateurs = 32,
33
+ Agenda = 64,
34
+ All = 127
35
+ }
36
+ export declare const datasets: Datasets;
37
+ export declare function getEnabledDatasets(categories: string[]): EnabledDatasets;
38
+ export declare function getChosenDatasets(enabledDatasets: EnabledDatasets): Dataset[];
@@ -0,0 +1,247 @@
1
+ import fs from "fs-extra";
2
+ import path from "path";
3
+ import assert from "assert";
4
+ export var EnabledDatasets;
5
+ (function (EnabledDatasets) {
6
+ EnabledDatasets[EnabledDatasets["None"] = 0] = "None";
7
+ EnabledDatasets[EnabledDatasets["Ameli"] = 1] = "Ameli";
8
+ EnabledDatasets[EnabledDatasets["Debats"] = 2] = "Debats";
9
+ EnabledDatasets[EnabledDatasets["DosLeg"] = 4] = "DosLeg";
10
+ EnabledDatasets[EnabledDatasets["Questions"] = 8] = "Questions";
11
+ EnabledDatasets[EnabledDatasets["Sens"] = 16] = "Sens";
12
+ EnabledDatasets[EnabledDatasets["PhotosSenateurs"] = 32] = "PhotosSenateurs";
13
+ EnabledDatasets[EnabledDatasets["Agenda"] = 64] = "Agenda";
14
+ EnabledDatasets[EnabledDatasets["All"] = 127] = "All";
15
+ })(EnabledDatasets || (EnabledDatasets = {}));
16
+ export const datasets = {
17
+ ameli: {
18
+ database: "ameli",
19
+ repairEncoding: true,
20
+ repairZip: (dataset, dataDir) => {
21
+ const sqlFilename = `${dataset.database}.sql`;
22
+ const sqlFilePath = path.join(dataDir, sqlFilename);
23
+ fs.removeSync(sqlFilePath);
24
+ fs.moveSync(path.join(dataDir, "var", "opt", "opendata", sqlFilename), sqlFilePath);
25
+ },
26
+ title: "Amendements",
27
+ url: "https://data.senat.fr/data/ameli/ameli.zip",
28
+ indexes: {
29
+ amdsen: [
30
+ { name: "idx_amdid", columns: ["amdid"] },
31
+ { name: "idx_senid", columns: ["senid"] },
32
+ { name: "idx_grpid", columns: ["grpid"] },
33
+ ],
34
+ sen_ameli: [{ name: "idx_entid", columns: ["entid"] }],
35
+ grppol_ameli: [{ name: "idx_entid", columns: ["entid"] }],
36
+ sub: [
37
+ { name: "idx_id", columns: ["id"] },
38
+ { name: "idx_typid", columns: ["typid"] },
39
+ { name: "idx_merid", columns: ["merid"] },
40
+ { name: "idx_comdelid", columns: ["comdelid"] },
41
+ ],
42
+ typsub: [{ name: "idx_id", columns: ["id"] }],
43
+ typrect: [{ name: "idx_id", columns: ["id"] }],
44
+ txt_ameli: [
45
+ { name: "idx_id", columns: ["id"] },
46
+ { name: "idx_txtetaid", columns: ["txtetaid"] },
47
+ { name: "idx_sesdepid", columns: ["sesdepid"] },
48
+ { name: "idx_natid", columns: ["natid"] },
49
+ { name: "idx_lecid", columns: ["lecid"] },
50
+ ],
51
+ etatxt: [{ name: "idx_id", columns: ["id"] }],
52
+ ses: [
53
+ { name: "idx_id", columns: ["id"] },
54
+ { name: "idx_typid", columns: ["typid"] },
55
+ { name: "idx_ann", columns: ["ann"] },
56
+ ],
57
+ typses: [{ name: "idx_id", columns: ["id"] }],
58
+ nat: [{ name: "idx_id", columns: ["id"] }],
59
+ lec_ameli: [{ name: "idx_id", columns: ["id"] }],
60
+ mot: [{ name: "idx_id", columns: ["id"] }],
61
+ avicom: [{ name: "idx_id", columns: ["id"] }],
62
+ avigvt: [{ name: "idx_id", columns: ["id"] }],
63
+ sor: [{ name: "idx_id", columns: ["id"] }],
64
+ irr: [{ name: "idx_id", columns: ["id"] }],
65
+ com_ameli: [{ name: "idx_entid", columns: ["entid"] }],
66
+ cab: [{ name: "idx_entid", columns: ["entid"] }],
67
+ amd: [
68
+ { name: "idx_subid", columns: ["subid"] },
69
+ { name: "idx_typrectid", columns: ["typrectid"] },
70
+ { name: "idx_txtid", columns: ["txtid"] },
71
+ { name: "idx_motid", columns: ["motid"] },
72
+ { name: "idx_avcid", columns: ["avcid"] },
73
+ { name: "idx_avgid", columns: ["avgid"] },
74
+ { name: "idx_sorid", columns: ["sorid"] },
75
+ { name: "idx_irrid", columns: ["irrid"] },
76
+ { name: "idx_nomentid", columns: ["nomentid"] },
77
+ ],
78
+ },
79
+ },
80
+ debats: {
81
+ database: "debats",
82
+ repairEncoding: false,
83
+ title: "Informations relatives aux comptes rendus intégraux de la séance publique",
84
+ url: "https://data.senat.fr/data/debats/debats.zip",
85
+ indexes: {
86
+ secdis: [
87
+ { name: "idx_datsea", columns: ["datsea"] },
88
+ { name: "idx_typseccod", columns: ["typseccod"] },
89
+ ],
90
+ intpjl: [{ name: "idx_secdiscle", columns: ["secdiscle"] }],
91
+ secdivers: [
92
+ { name: "idx_datsea", columns: ["datsea"] },
93
+ { name: "idx_typseccod", columns: ["typseccod"] },
94
+ ],
95
+ intdivers: [{ name: "idx_intdiverscle", columns: ["intdiverscle"] }],
96
+ lecassdeb: [{ name: "idx_datsea", columns: ["datsea"] }],
97
+ },
98
+ },
99
+ dosleg: {
100
+ database: "dosleg",
101
+ repairEncoding: false,
102
+ title: "Dossiers législatifs",
103
+ url: "https://data.senat.fr/data/dosleg/dosleg.zip",
104
+ indexes: {
105
+ amescr: [{ name: "idx_scrnum", columns: ["scrnum"] }],
106
+ auteur: [{ name: "idx_autcod", columns: ["autcod"] }],
107
+ corscr: [{ name: "idx_scrnum", columns: ["scrnum"] }],
108
+ date_seance: [
109
+ { name: "idx_code", columns: ["code"] },
110
+ { name: "idx_lecidt", columns: ["lecidt"] },
111
+ ],
112
+ deccoc: [{ name: "idx_deccoccod", columns: ["deccoccod"] }],
113
+ etaloi: [{ name: "idx_etaloicod", columns: ["etaloicod"] }],
114
+ lecass: [
115
+ { name: "idx_lecidt", columns: ["lecidt"] },
116
+ { name: "idx_codass", columns: ["codass"] },
117
+ { name: "idx_orgcod", columns: ["orgcod"] },
118
+ { name: "idx_orippr", columns: ["orippr"] },
119
+ ],
120
+ lecassrap: [
121
+ { name: "idx_rapcod", columns: ["rapcod"] },
122
+ { name: "idx_lecassidt", columns: ["lecassidt"] },
123
+ ],
124
+ lecture: [
125
+ { name: "idx_loicod", columns: ["loicod"] },
126
+ { name: "idx_typleccod", columns: ["typleccod"] },
127
+ { name: "idx_lecidt", columns: ["lecidt"] },
128
+ ],
129
+ loi: [
130
+ { name: "idx_typloicod", columns: ["typloicod"] },
131
+ { name: "idx_etaloicod", columns: ["etaloicod"] },
132
+ { name: "idx_deccoccod", columns: ["deccoccod"] },
133
+ { name: "idx_loicod", columns: ["loicod"] },
134
+ ],
135
+ loithe: [
136
+ { name: "idx_thecle", columns: ["thecle"] },
137
+ { name: "idx_loicod", columns: ["loicod"] },
138
+ ],
139
+ posvot: [{ name: "idx_posvotcod", columns: ["posvotcod"] }],
140
+ rap: [
141
+ { name: "idx_rapcod", columns: ["rapcod"] },
142
+ { name: "idx_coddenrap", columns: ["coddenrap"] },
143
+ ],
144
+ rolsig: [{ name: "idx_signataire", columns: ["signataire"] }],
145
+ scr: [
146
+ { name: "idx_code", columns: ["code"] },
147
+ { name: "idx_scrnum", columns: ["scrnum"] },
148
+ { name: "idx_sesann", columns: ["sesann"] },
149
+ ],
150
+ stavot: [{ name: "idx_stavotidt", columns: ["stavotidt"] }],
151
+ texte: [
152
+ { name: "idx_lecassidt", columns: ["lecassidt"] },
153
+ { name: "idx_oritxtcod", columns: ["oritxtcod"] },
154
+ { name: "idx_typtxtcod", columns: ["typtxtcod"] },
155
+ { name: "idx_texcod", columns: ["texcod"] },
156
+ ],
157
+ the: [{ name: "idx_thecle", columns: ["thecle"] }],
158
+ titsen: [{ name: "idx_titsencod", columns: ["titsencod"] }],
159
+ typloi: [{ name: "idx_typloicod", columns: ["typloicod"] }],
160
+ typtxt: [{ name: "idx_typtxtcod", columns: ["typtxtcod"] }],
161
+ votsen: [
162
+ { name: "idx_scrnum", columns: ["scrnum"] },
163
+ { name: "idx_sesann", columns: ["sesann"] },
164
+ { name: "idx_titsencod", columns: ["titsencod"] },
165
+ { name: "idx_stavotidt", columns: ["stavotidt"] },
166
+ { name: "idx_posvotcod", columns: ["posvotcod"] },
167
+ { name: "idx_senmat", columns: ["senmat"] },
168
+ ],
169
+ },
170
+ mergeKeys: {
171
+ corscr: ["sesann", "scrnum", "corscrord"],
172
+ docsea: ["evtseacle", "docseaord"],
173
+ gen: ["gencod"],
174
+ },
175
+ rowMultisetMergeTables: ["amescr"],
176
+ },
177
+ questions: {
178
+ database: "questions",
179
+ repairEncoding: false,
180
+ title: "Questions écrites et orales posées par les sénateurs au Gouvernement",
181
+ url: "https://data.senat.fr/data/questions/questions.zip",
182
+ indexes: {
183
+ tam_reponses: [{ name: "idx_idque", columns: ["idque"] }],
184
+ tam_questions: [
185
+ { name: "idx_sorquecod", columns: ["sorquecod"] },
186
+ { name: "idx_etaquecod", columns: ["etaquecod"] },
187
+ ],
188
+ the: [{ name: "idx_thenouidt", columns: ["thenouidt"] }],
189
+ sortquestion: [{ name: "idx_sorquecod", columns: ["sorquecod"] }],
190
+ etatquestion: [{ name: "idx_etaquecod", columns: ["etaquecod"] }],
191
+ },
192
+ rowMultisetMergeTables: ["tam_reponses"],
193
+ },
194
+ sens: {
195
+ database: "sens",
196
+ repairEncoding: false,
197
+ repairZip: (dataset, dataDir) => {
198
+ const sqlFilename = `${dataset.database}.sql`;
199
+ const sqlFilePath = path.join(dataDir, sqlFilename);
200
+ fs.removeSync(sqlFilePath);
201
+ fs.moveSync(path.join(dataDir, "export_sens.sql"), sqlFilePath);
202
+ },
203
+ title: "Sénateurs (y compris organes et présence)",
204
+ url: "https://data.senat.fr/data/senateurs/export_sens.zip",
205
+ indexes: {
206
+ dpt: [
207
+ { name: "idx_dptnum", columns: ["dptnum"] },
208
+ { name: "idx_regcod", columns: ["regcod"] },
209
+ ],
210
+ activite_loi: [{ name: "idx_actid", columns: ["actid"] }],
211
+ activite_delegation: [{ name: "idx_actid", columns: ["actid"] }],
212
+ activite_participant: [{ name: "idx_senmat", columns: ["senmat"] }],
213
+ activite_senateur: [{ name: "idx_senmat", columns: ["senmat"] }],
214
+ senbur: [
215
+ { name: "idx_senmat", columns: ["senmat"] },
216
+ { name: "idx_burcod", columns: ["burcod"] },
217
+ ],
218
+ elucan: [
219
+ { name: "idx_senmat", columns: ["senmat"] },
220
+ { name: "idx_typmancod", columns: ["typmancod"] },
221
+ ],
222
+ },
223
+ mergeKeys: {
224
+ activite: ["actid"],
225
+ },
226
+ },
227
+ };
228
+ function getEnabledDatasetByName(datasetName) {
229
+ const enabledDataset = EnabledDatasets[datasetName];
230
+ return typeof enabledDataset === "number" ? enabledDataset : undefined;
231
+ }
232
+ export function getEnabledDatasets(categories) {
233
+ categories.map((datasetName) => assert.notStrictEqual(getEnabledDatasetByName(datasetName), undefined, `Unknown name of dataset: ${datasetName}`));
234
+ return categories.reduce((enabledDatasets, datasetName) => {
235
+ const enabledDataset = getEnabledDatasetByName(datasetName);
236
+ return enabledDatasets | (enabledDataset || EnabledDatasets.None);
237
+ }, EnabledDatasets.None);
238
+ }
239
+ export function getChosenDatasets(enabledDatasets) {
240
+ return [
241
+ enabledDatasets & EnabledDatasets.Ameli ? datasets.ameli : null,
242
+ enabledDatasets & EnabledDatasets.Debats ? datasets.debats : null,
243
+ enabledDatasets & EnabledDatasets.DosLeg ? datasets.dosleg : null,
244
+ enabledDatasets & EnabledDatasets.Questions ? datasets.questions : null,
245
+ enabledDatasets & EnabledDatasets.Sens ? datasets.sens : null,
246
+ ].filter((dataset) => dataset !== null);
247
+ }
@@ -0,0 +1,2 @@
1
+ import type { DebatResult } from "../rich_types/debats.js";
2
+ export declare function findAll(): AsyncGenerator<DebatResult, void, unknown>;
@@ -0,0 +1,98 @@
1
+ import { sql } from "kysely";
2
+ import { jsonArrayFrom } from "kysely/helpers/postgres";
3
+ import { db, streamRawQuery } from "./databases_postgres.js";
4
+ export async function* findAll() {
5
+ const compiledQuery = db
6
+ .withSchema("senat")
7
+ .selectFrom("debats_debats as debats")
8
+ .select((eb) => [
9
+ sql `to_char(${eb.ref("debats.datsea")}, 'YYYYMMDD')`.as("id"),
10
+ sql `to_char(${eb.ref("debats.datsea")}, 'YYYY-MM-DD')`.as("date_seance"),
11
+ sql `${eb.ref("debats.numero")}::text`.as("numero"),
12
+ "debats.deburl as url",
13
+ "debats.debsyn as etat_synchronisation",
14
+ // Sections principales (PJL)
15
+ jsonArrayFrom(eb
16
+ .withSchema("senat")
17
+ .selectFrom("debats_secdis as secdis")
18
+ .leftJoin("debats_typsec as typsec", "typsec.typseccod", "secdis.typseccod")
19
+ .select((eb2) => [
20
+ sql `secdis.secdisordid::text`.as("id"),
21
+ "secdis.secdisnum as numero",
22
+ "secdis.secdisobj as objet",
23
+ "secdis.secdisurl as url",
24
+ "typsec.typseclib as type",
25
+ "typsec.typseccat as categorie",
26
+ "secdis.lecassidt as lecture_id",
27
+ // Interventions de la section
28
+ jsonArrayFrom(eb2
29
+ .withSchema("senat")
30
+ .selectFrom("debats_intpjl as intpjl")
31
+ .leftJoin("dosleg_auteur as auteur", "auteur.autcod", "intpjl.autcod")
32
+ .select([
33
+ sql `intpjl.intordid::text`.as("id"),
34
+ "intpjl.autcod as auteur_code",
35
+ "intpjl.intfon as fonction_intervenant",
36
+ "intpjl.inturl as url",
37
+ "intpjl.intana as analyse",
38
+ sql `json_build_object(
39
+ 'code', auteur.autcod,
40
+ 'nom', auteur.nomuse,
41
+ 'prenom', auteur.prenom,
42
+ 'matricule', auteur.autmat
43
+ )`.as("auteur"),
44
+ ])
45
+ .whereRef("intpjl.secdiscle", "=", "secdis.secdiscle")
46
+ .orderBy("intpjl.intordid", "asc")).as("interventions"),
47
+ ])
48
+ .whereRef("secdis.datsea", "=", "debats.datsea")
49
+ .orderBy("secdis.secdisordid", "asc")).as("sections"),
50
+ // Sections diverses
51
+ jsonArrayFrom(eb
52
+ .withSchema("senat")
53
+ .selectFrom("debats_secdivers as secdivers")
54
+ .leftJoin("debats_typsec as typsec", "typsec.typseccod", "secdivers.typseccod")
55
+ .select((eb2) => [
56
+ "secdivers.secdiverslibelle as libelle",
57
+ "secdivers.secdiversobj as objet",
58
+ "typsec.typseclib as type",
59
+ "typsec.typseccat as categorie",
60
+ // Interventions diverses
61
+ jsonArrayFrom(eb2
62
+ .withSchema("senat")
63
+ .selectFrom("debats_intdivers as intdivers")
64
+ .leftJoin("dosleg_auteur as auteur", "auteur.autcod", "intdivers.autcod")
65
+ .select([
66
+ sql `intdivers.intdiversordid::text`.as("id"),
67
+ "intdivers.autcod as auteur_code",
68
+ "intdivers.intfon as fonction_intervenant",
69
+ "intdivers.inturl as url",
70
+ "intdivers.intana as analyse",
71
+ sql `json_build_object(
72
+ 'code', auteur.autcod,
73
+ 'nom', auteur.nomuse,
74
+ 'prenom', auteur.prenom,
75
+ 'matricule', auteur.autmat
76
+ )`.as("auteur"),
77
+ ])
78
+ .whereRef("intdivers.secdiverscle", "=", "secdivers.secdiverscle")
79
+ .orderBy("intdivers.intdiversordid", "asc")).as("interventions"),
80
+ ])
81
+ .whereRef("secdivers.datsea", "=", "debats.datsea")).as("sections_divers"),
82
+ // Lectures
83
+ jsonArrayFrom(eb
84
+ .withSchema("senat")
85
+ .selectFrom("debats_lecassdeb as lecassdeb")
86
+ .select(["lecassdeb.lecassidt as id"])
87
+ .whereRef("lecassdeb.datsea", "=", "debats.datsea")).as("lectures"),
88
+ ])
89
+ .compile();
90
+ for await (const row of streamRawQuery(compiledQuery)) {
91
+ yield {
92
+ ...row,
93
+ lectures: row.lectures ?? [],
94
+ sections: row.sections ?? [],
95
+ sections_divers: row.sections_divers ?? [],
96
+ };
97
+ }
98
+ }
@@ -0,0 +1,3 @@
1
+ import type { DocumentResult } from "../documents.js";
2
+ export declare function findAllTextes(): AsyncGenerator<DocumentResult, void, unknown>;
3
+ export declare function findAllRapports(): AsyncGenerator<DocumentResult, void, unknown>;
@@ -0,0 +1,132 @@
1
+ import { sql } from "kysely";
2
+ import { jsonArrayFrom } from "kysely/helpers/postgres";
3
+ import { db, streamRawQuery } from "./databases_postgres.js";
4
+ export async function* findAllTextes() {
5
+ const compiledQuery = db
6
+ .withSchema("senat")
7
+ .selectFrom("dosleg_texte as texte")
8
+ .leftJoin("dosleg_oritxt as oritxt", "oritxt.oritxtcod", "texte.oritxtcod")
9
+ .leftJoin("dosleg_typtxt as typtxt", "typtxt.typtxtcod", "texte.typtxtcod")
10
+ .leftJoin("dosleg_lecass as lecass", "lecass.lecassidt", "texte.lecassidt")
11
+ .leftJoin("dosleg_lecture as lecture", "lecture.lecidt", "lecass.lecidt")
12
+ .leftJoin("dosleg_loi as loi", "loi.loicod", "lecture.loicod")
13
+ .select((eb) => [
14
+ "loi.signet as signet_dossier",
15
+ "texte.texnum as numero",
16
+ "texte.orgcod as code_organisme",
17
+ sql `
18
+ case
19
+ when ${eb.ref("texte.texurl")} is not null then
20
+ regexp_replace(regexp_replace(trim(${eb.ref("texte.texurl")}), '#+$', ''), '^(.*/)?(.*?)(\.html)?$', '\2')
21
+ else null
22
+ end
23
+ `.as("id"),
24
+ sql `
25
+ case
26
+ when ${eb.ref("texte.typurl")} = 'I' then regexp_replace('https://www.senat.fr/leg/' || rtrim(${eb.ref("texte.texurl")}), '#+$', '')
27
+ else regexp_replace(rtrim(${eb.ref("texte.texurl")}), '#+$', '')
28
+ end
29
+ `.as("url"),
30
+ sql `rtrim(${eb.ref("oritxt.oritxtlib")})`.as("origine"),
31
+ "oritxt.oriordre as ordre_origine",
32
+ "oritxt.oritxtado as code_adoption",
33
+ "oritxt.oritxtmod as modification",
34
+ sql `rtrim(${eb.ref("typtxt.typtxtlib")})`.as("type"),
35
+ sql `to_char(${eb.ref("texte.txtoritxtdat")}, 'YYYY-MM-DD')`.as("date"),
36
+ sql `${eb.ref("texte.sesann")}::int`.as("session"),
37
+ // Auteurs
38
+ jsonArrayFrom(eb
39
+ .withSchema("senat")
40
+ .selectFrom("dosleg_auteur as auteur")
41
+ .leftJoin("dosleg_ecr as ecr", "ecr.autcod", "auteur.autcod")
42
+ .leftJoin("dosleg_rolsig as rolsig", "rolsig.signataire", "ecr.signataire")
43
+ .select([
44
+ "auteur.prenom as prenom",
45
+ "auteur.nomuse as nom_usuel",
46
+ "auteur.autmat as matricule",
47
+ sql `ecr.ecrnumtri::text`.as("ordre"),
48
+ "ecr.ecrnumtri as ordre_num",
49
+ "rolsig.rolsiglib as role",
50
+ "ecr.ecrqua as qualite",
51
+ ])
52
+ .whereRef("ecr.texcod", "=", "texte.texcod")).as("auteurs"),
53
+ sql `null::text`.as("titre"),
54
+ ])
55
+ .orderBy(sql `array_position(array['0','2','1'], oritxt.oriordre)`)
56
+ .compile();
57
+ for await (const row of streamRawQuery(compiledQuery)) {
58
+ yield {
59
+ ...row,
60
+ auteurs: row.auteurs ?? [],
61
+ };
62
+ }
63
+ }
64
+ export async function* findAllRapports() {
65
+ const compiledQuery = db
66
+ .withSchema("senat")
67
+ .selectFrom("dosleg_rap as rap")
68
+ .leftJoin("dosleg_raporg as raporg", "raporg.rapcod", "rap.rapcod")
69
+ .leftJoin("dosleg_denrap as denrap", "denrap.coddenrap", "rap.coddenrap")
70
+ .leftJoin("dosleg_lecassrap as lecassrap", "lecassrap.rapcod", "rap.rapcod")
71
+ .leftJoin("dosleg_lecass as lecass", "lecass.lecassidt", "lecassrap.lecassidt")
72
+ .leftJoin("dosleg_lecture as lecture", "lecture.lecidt", "lecass.lecidt")
73
+ .leftJoin("dosleg_loi as loi", "loi.loicod", "lecture.loicod")
74
+ .select((eb) => [
75
+ "loi.signet as signet_dossier",
76
+ "rap.rapnum as numero",
77
+ "raporg.orgcod as code_organisme",
78
+ sql `
79
+ case
80
+ when ${eb.ref("rap.rapurl")} is not null then
81
+ regexp_replace(regexp_replace(trim(${eb.ref("rap.rapurl")}), '#+$', ''), '^(.*/)?(.*?)(\.html)?$', '\2')
82
+ else null
83
+ end
84
+ `.as("id"),
85
+ sql `
86
+ case
87
+ when ${eb.ref("rap.typurl")} = 'I' then regexp_replace('https://www.senat.fr/rap/' || rtrim(${eb.ref("rap.rapurl")}), '#+$', '')
88
+ else regexp_replace(rtrim(${eb.ref("rap.rapurl")}), '#+$', '')
89
+ end
90
+ `.as("url"),
91
+ sql `rtrim(${eb.ref("denrap.libdenrap")})`.as("type"),
92
+ sql `rtrim(rtrim(${eb.ref("rap.raptil")}))`.as("titre"),
93
+ sql `rtrim(rtrim(${eb.ref("rap.rapsoustit")}))`.as("sous_titre"),
94
+ sql `to_char(${eb.ref("rap.date_depot")}, 'YYYY-MM-DD')`.as("date"),
95
+ sql `${eb.ref("rap.sesann")}::int`.as("session"),
96
+ // Auteurs
97
+ jsonArrayFrom(eb
98
+ .withSchema("senat")
99
+ .selectFrom("dosleg_auteur as auteur")
100
+ .leftJoin("dosleg_ecr as ecr", "ecr.autcod", "auteur.autcod")
101
+ .leftJoin("dosleg_rolsig as rolsig", "rolsig.signataire", "ecr.signataire")
102
+ .select([
103
+ "auteur.prenom as prenom",
104
+ "auteur.nomuse as nom_usuel",
105
+ "auteur.autmat as matricule",
106
+ sql `ecr.ecrnumtri::text`.as("ordre"),
107
+ "ecr.ecrnumtri as ordre_num",
108
+ "rolsig.rolsiglib as role",
109
+ "ecr.ecrqua as qualite",
110
+ ])
111
+ .whereRef("ecr.rapcod", "=", "rap.rapcod")).as("auteurs"),
112
+ // Documents annexes
113
+ jsonArrayFrom(eb
114
+ .withSchema("senat")
115
+ .selectFrom("dosleg_docatt as docatt")
116
+ .leftJoin("dosleg_typatt as typatt", "typatt.typattcod", "docatt.typattcod")
117
+ .select(["docatt.docatturl as url", "typatt.typattlib as type_document"])
118
+ .whereRef("docatt.rapcod", "=", "rap.rapcod")).as("documents_annexes"),
119
+ sql `null::text`.as("origine"),
120
+ sql `null::text`.as("ordre_origine"),
121
+ sql `null::text`.as("code_adoption"),
122
+ sql `null::text`.as("modification"),
123
+ ])
124
+ .compile();
125
+ for await (const row of streamRawQuery(compiledQuery)) {
126
+ yield {
127
+ ...row,
128
+ auteurs: row.auteurs ?? [],
129
+ documents_annexes: row.documents_annexes ?? [],
130
+ };
131
+ }
132
+ }
@@ -0,0 +1,2 @@
1
+ import type { DossierLegislatifResult } from "../rich_types/dosleg.js";
2
+ export declare function findAllDossiers(): AsyncGenerator<DossierLegislatifResult, void, unknown>;