@tricoteuses/senat 3.1.2 → 3.1.3

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 (86) hide show
  1. package/lib/src/rich_types/dosleg.js +13 -3
  2. package/lib/src/rich_types/sens.d.ts +2 -0
  3. package/lib/src/scripts/retrieve_open_data.js +4 -2
  4. package/lib/src/scripts/shared/make_generate_zod_schemas.js +6 -2
  5. package/lib/src/server/databases_postgres.js +2 -1
  6. package/lib/src/server/documents.js +2 -2
  7. package/lib/src/server/dosleg.js +2 -2
  8. package/lib/src/server/sens.js +70 -0
  9. package/lib/src/utils/reunion_parsing.js +1 -1
  10. package/package.json +3 -1
  11. package/lib/src/config.d.ts +0 -43
  12. package/lib/src/config.js +0 -37
  13. package/lib/src/conversion_textes.d.ts +0 -11
  14. package/lib/src/conversion_textes.js +0 -320
  15. package/lib/src/databases_postgres.d.ts +0 -4
  16. package/lib/src/databases_postgres.js +0 -23
  17. package/lib/src/datasets.d.ts +0 -38
  18. package/lib/src/datasets.js +0 -247
  19. package/lib/src/git.d.ts +0 -27
  20. package/lib/src/git.js +0 -251
  21. package/lib/src/loaders.d.ts +0 -52
  22. package/lib/src/loaders.js +0 -260
  23. package/lib/src/model/agenda.d.ts +0 -6
  24. package/lib/src/model/agenda.js +0 -148
  25. package/lib/src/model/ameli.d.ts +0 -67
  26. package/lib/src/model/ameli.js +0 -150
  27. package/lib/src/model/commission.d.ts +0 -19
  28. package/lib/src/model/commission.js +0 -269
  29. package/lib/src/model/debats.d.ts +0 -39
  30. package/lib/src/model/debats.js +0 -112
  31. package/lib/src/model/documents.d.ts +0 -32
  32. package/lib/src/model/documents.js +0 -182
  33. package/lib/src/model/dosleg.d.ts +0 -144
  34. package/lib/src/model/dosleg.js +0 -468
  35. package/lib/src/model/index.d.ts +0 -7
  36. package/lib/src/model/index.js +0 -7
  37. package/lib/src/model/questions.d.ts +0 -54
  38. package/lib/src/model/questions.js +0 -91
  39. package/lib/src/model/scrutins.d.ts +0 -48
  40. package/lib/src/model/scrutins.js +0 -121
  41. package/lib/src/model/seance.d.ts +0 -3
  42. package/lib/src/model/seance.js +0 -267
  43. package/lib/src/model/sens.d.ts +0 -112
  44. package/lib/src/model/sens.js +0 -385
  45. package/lib/src/model/util.d.ts +0 -1
  46. package/lib/src/model/util.js +0 -15
  47. package/lib/src/raw_types/ameli.d.ts +0 -1762
  48. package/lib/src/raw_types/ameli.js +0 -1074
  49. package/lib/src/raw_types/debats.d.ts +0 -380
  50. package/lib/src/raw_types/debats.js +0 -266
  51. package/lib/src/raw_types/dosleg.d.ts +0 -2954
  52. package/lib/src/raw_types/dosleg.js +0 -2005
  53. package/lib/src/raw_types/questions.d.ts +0 -699
  54. package/lib/src/raw_types/questions.js +0 -493
  55. package/lib/src/raw_types/sens.d.ts +0 -7843
  56. package/lib/src/raw_types/sens.js +0 -4691
  57. package/lib/src/raw_types_schemats/ameli.d.ts +0 -541
  58. package/lib/src/raw_types_schemats/ameli.js +0 -2
  59. package/lib/src/raw_types_schemats/debats.d.ts +0 -127
  60. package/lib/src/raw_types_schemats/debats.js +0 -2
  61. package/lib/src/raw_types_schemats/dosleg.d.ts +0 -977
  62. package/lib/src/raw_types_schemats/dosleg.js +0 -2
  63. package/lib/src/raw_types_schemats/questions.d.ts +0 -237
  64. package/lib/src/raw_types_schemats/questions.js +0 -2
  65. package/lib/src/raw_types_schemats/sens.d.ts +0 -2709
  66. package/lib/src/raw_types_schemats/sens.js +0 -2
  67. package/lib/src/types/agenda.d.ts +0 -45
  68. package/lib/src/types/agenda.js +0 -1
  69. package/lib/src/types/ameli.d.ts +0 -5
  70. package/lib/src/types/ameli.js +0 -1
  71. package/lib/src/types/compte_rendu.d.ts +0 -83
  72. package/lib/src/types/compte_rendu.js +0 -1
  73. package/lib/src/types/debats.d.ts +0 -2
  74. package/lib/src/types/debats.js +0 -1
  75. package/lib/src/types/dosleg.d.ts +0 -70
  76. package/lib/src/types/dosleg.js +0 -1
  77. package/lib/src/types/questions.d.ts +0 -2
  78. package/lib/src/types/questions.js +0 -1
  79. package/lib/src/types/sens.d.ts +0 -8
  80. package/lib/src/types/sens.js +0 -1
  81. package/lib/src/types/sessions.d.ts +0 -6
  82. package/lib/src/types/sessions.js +0 -19
  83. package/lib/src/types/texte.d.ts +0 -72
  84. package/lib/src/types/texte.js +0 -15
  85. package/lib/src/validators/config.d.ts +0 -9
  86. package/lib/src/validators/config.js +0 -10
@@ -1,2 +0,0 @@
1
- /* tslint:disable */
2
- export {};
@@ -1,45 +0,0 @@
1
- export interface AgendaEvent {
2
- id: string;
3
- type: string | null;
4
- date: string;
5
- startTime: string | null;
6
- endTime: string | null;
7
- timeOriginal: string | null;
8
- titre: string;
9
- organe: string | null;
10
- objet: string | null;
11
- lieu: string | null;
12
- captationVideo: boolean;
13
- urlDossierSenat: string | null;
14
- quantieme: string | null;
15
- }
16
- export type TimeSlot = "MATIN" | "APRES-MIDI" | "SOIR" | "UNKNOWN";
17
- export interface Reunion {
18
- uid: string;
19
- chambre: "SN";
20
- date: string;
21
- startTime: string | null;
22
- endTime: string | null;
23
- captationVideo: boolean;
24
- titre: string;
25
- type: string;
26
- organe?: string;
27
- objet?: string;
28
- lieu?: string;
29
- events: AgendaEvent[];
30
- compteRenduRefUid?: string;
31
- transcriptionRef?: string;
32
- urlVideo?: string;
33
- urlPageVideo?: string;
34
- timecodeDebutVideo?: number;
35
- timecodeFinVideo?: number;
36
- odj?: ReunionOdj;
37
- }
38
- export interface ReunionOdjPoint {
39
- objet: string | null;
40
- dossierLegislatifRef: string | null;
41
- codeEtape: string | null;
42
- }
43
- export interface ReunionOdj {
44
- pointsOdj: ReunionOdjPoint[];
45
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,5 +0,0 @@
1
- import { TxtAmeli } from "../raw_types/ameli.js";
2
- import { Sub } from "../raw_types/ameli.js";
3
- export interface TxtAmeliCustom extends TxtAmeli {
4
- subids?: Sub["id"][];
5
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,83 +0,0 @@
1
- export interface CompteRendu {
2
- uid: string;
3
- seanceRef: string;
4
- sessionRef: string;
5
- metadonnees: Metadonnees;
6
- contenu: Contenu;
7
- }
8
- export interface Metadonnees {
9
- dateSeance: string;
10
- dateSeanceJour: string;
11
- numSeanceJour: string;
12
- numSeance: string;
13
- typeAssemblee: "AN" | "SN";
14
- legislature: string;
15
- session: string;
16
- nomFichierJo: string;
17
- validite: string;
18
- etat: string;
19
- diffusion: string;
20
- version: string;
21
- environnement: string;
22
- heureGeneration: Date;
23
- sommaire?: Sommaire;
24
- }
25
- export interface Contenu {
26
- quantiemes: Quantiemes;
27
- ouvertureSeance?: Point[] | Point;
28
- point: Point[] | Point;
29
- finSeance?: FinSeance;
30
- paragraphe?: Point[];
31
- }
32
- export interface FinSeance {
33
- point: Point;
34
- }
35
- export interface Quantiemes {
36
- journee: string;
37
- session: string;
38
- }
39
- export interface Point {
40
- ordre_absolu_seance: string;
41
- code_grammaire: string;
42
- roledebat?: string;
43
- orateurs?: {
44
- orateur: {
45
- nom: string;
46
- id: string;
47
- qualite: string;
48
- };
49
- };
50
- texte: {
51
- _: string;
52
- };
53
- code_style?: string;
54
- }
55
- export interface Texte {
56
- _?: string;
57
- id_syceron?: string;
58
- stime?: string;
59
- sup?: string;
60
- lienAdt?: Texte[] | Texte;
61
- }
62
- export interface Sommaire {
63
- presidentSeance: Texte;
64
- sommaire1: SommaireElement[] | SommaireElement;
65
- sommaire3?: SommaireElement[] | SommaireElement;
66
- sommaire2?: SommaireElement[] | SommaireElement;
67
- para?: Texte[] | Texte;
68
- }
69
- export interface SommaireElement {
70
- valeur_pts_odj: string | undefined;
71
- titreStruct: TitreStruct;
72
- para?: Array<Texte | string> | Texte;
73
- sommaire2?: SommaireElement[] | SommaireElement;
74
- sommaire3?: SommaireElement[] | SommaireElement;
75
- presidentSeance?: Texte[] | Texte;
76
- type_debat?: string;
77
- }
78
- export interface TitreStruct {
79
- id_syceron: string;
80
- intitule?: string;
81
- sousIntitule?: string;
82
- type_debat?: string;
83
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,2 +0,0 @@
1
- import { debats as Debat, lecassdeb as LecAssDeb } from "../raw_types_schemats/debats";
2
- export type { Debat, LecAssDeb };
@@ -1 +0,0 @@
1
- export {};
@@ -1,70 +0,0 @@
1
- import { Ass, Aud as AudRaw, Auteur as AuteurRaw, DateSeance as DateSeanceRaw, Deccoc, Denrap, Docatt as DocattRaw, Ecr as EcrRaw, Etaloi, Lecass as LecassRaw, Lecassrap as LecassrapRaw, Lecture as LectureRaw, Loi as LoiRaw, Org, Oritxt, Qua, Rap as RapRaw, Raporg, Scr, Texte as TexteRaw, Typatt, Typlec, Typloi, Typtxt, Typurl } from "../raw_types/dosleg.js";
2
- import { TxtAmeli } from "../raw_types/ameli.js";
3
- import { Debats } from "../raw_types/debats.js";
4
- import { TxtAmeliCustom } from "./ameli.js";
5
- export type { Deccoc as DecCoc, Denrap as DenRap, Etaloi as EtaLoi, Oritxt as OriTxt, Raporg as RapOrg, Typatt as TypAtt, Typlec as TypLec, Typloi as TypLoi, Typtxt as TypTxt, Typurl as TypUrl, };
6
- export interface Aud extends AudRaw {
7
- org?: Org;
8
- }
9
- export interface Auteur extends AuteurRaw {
10
- qua?: Qua;
11
- }
12
- export interface DateSeance extends DateSeanceRaw {
13
- debat?: Debats;
14
- scrids?: string[];
15
- scrs?: Scr[];
16
- }
17
- export interface DocAtt extends DocattRaw {
18
- rap?: RapRaw;
19
- typatt?: Typatt;
20
- }
21
- export interface Ecr extends EcrRaw {
22
- aut?: Auteur;
23
- }
24
- export interface LecAss extends LecassRaw {
25
- ass?: Ass;
26
- auds?: Aud[];
27
- audcles?: AudRaw["audcle"][];
28
- datesSeances?: DateSeance[];
29
- datesSeancesCodes?: DateSeanceRaw["code"][];
30
- debatdatseas: Date[];
31
- lecassraps?: LecAssRap[];
32
- lecassrapids?: string[];
33
- org?: Org;
34
- texcods: TexteRaw["texcod"][];
35
- textes?: Texte[];
36
- }
37
- export interface LecAssRap extends LecassrapRaw {
38
- rap?: RapRaw;
39
- }
40
- export interface Lecture extends LectureRaw {
41
- typlec?: Typlec;
42
- lecassidts?: LecassRaw["lecassidt"][];
43
- lecasss?: LecAss[];
44
- }
45
- export interface Loi extends LoiRaw {
46
- deccoc?: Deccoc;
47
- etaloi?: Etaloi;
48
- lecidts?: LectureRaw["lecidt"][];
49
- lectures?: Lecture[];
50
- typloi?: Typloi;
51
- }
52
- export interface Rap extends RapRaw {
53
- denrap?: Denrap;
54
- docattcles?: DocattRaw["docattcle"][];
55
- docatts?: DocAtt[];
56
- ecrnums?: EcrRaw["ecrnum"][];
57
- ecrs?: Ecr[];
58
- orgcods?: Raporg["orgcod"][];
59
- orgs?: Org[];
60
- }
61
- export interface Texte extends TexteRaw {
62
- ecrs?: Ecr[];
63
- ecrnums?: EcrRaw["ecrnum"][];
64
- libtypurl?: Typurl["libtypurl"];
65
- org?: Org;
66
- oritxt: Oritxt;
67
- typtxt?: Typtxt;
68
- txtAmeli?: TxtAmeliCustom;
69
- txtAmeliId: TxtAmeli["id"];
70
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,2 +0,0 @@
1
- import { TamQuestions } from "../raw_types/questions.js";
2
- export type { TamQuestions as Question };
@@ -1 +0,0 @@
1
- export {};
@@ -1,8 +0,0 @@
1
- export interface Photo {
2
- chemin: string;
3
- cheminMosaique: string;
4
- hauteur: number;
5
- largeur: number;
6
- xMosaique: number;
7
- yMosaique: number;
8
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,6 +0,0 @@
1
- export declare const UNDEFINED_SESSION = 0;
2
- export declare const sessionOptions: readonly [1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026];
3
- export declare const sessionOptionsOrAll: readonly [0, 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026];
4
- export type Session = (typeof sessionOptions)[number];
5
- export type SessionOrAll = (typeof sessionOptionsOrAll)[number];
6
- export declare function getSessionsFromStart(startSession: SessionOrAll): (1958 | 1959 | 1960 | 1961 | 1962 | 1963 | 1964 | 1965 | 1966 | 1967 | 1968 | 1969 | 1970 | 1971 | 1972 | 1973 | 1974 | 1975 | 1976 | 1977 | 1978 | 1979 | 1980 | 1981 | 1982 | 1983 | 1984 | 1985 | 1986 | 1987 | 1988 | 1989 | 1990 | 1991 | 1992 | 1993 | 1994 | 1995 | 1996 | 1997 | 1998 | 1999 | 2000 | 2001 | 2002 | 2003 | 2004 | 2005 | 2006 | 2007 | 2008 | 2009 | 2010 | 2011 | 2012 | 2013 | 2014 | 2015 | 2016 | 2017 | 2018 | 2019 | 2020 | 2021 | 2022 | 2023 | 2024 | 2025 | 2026)[];
@@ -1,19 +0,0 @@
1
- export const UNDEFINED_SESSION = 0;
2
- export const sessionOptions = [
3
- 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976,
4
- 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995,
5
- 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014,
6
- 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025, 2026,
7
- // TO COMPLETE EVERY YEAR :)
8
- ];
9
- export const sessionOptionsOrAll = [UNDEFINED_SESSION, ...sessionOptions];
10
- export function getSessionsFromStart(startSession) {
11
- if (startSession === UNDEFINED_SESSION) {
12
- return Array.from(sessionOptions);
13
- }
14
- const sessionIndex = sessionOptions.findIndex((session) => startSession === session);
15
- if (sessionIndex >= 0) {
16
- return sessionOptions.slice(sessionIndex);
17
- }
18
- return [];
19
- }
@@ -1,72 +0,0 @@
1
- import { DocumentResult } from "../loaders.js";
2
- export declare enum DivisionType {
3
- tome = 1,
4
- part = 2,
5
- book = 3,
6
- title = 4,
7
- subtitle = 5,
8
- chapter = 6,
9
- section = 7,
10
- subsection = 8,
11
- paragraph = 9,
12
- article = 10,
13
- alinea = 11,
14
- division = 12
15
- }
16
- export type DivisionTag = keyof typeof DivisionType;
17
- export interface DocumentMetadata {
18
- name: string;
19
- session: number | null | undefined;
20
- date?: string | null;
21
- url_expose_des_motifs?: URL;
22
- url_xml?: URL;
23
- url_html: URL;
24
- url_pdf: URL;
25
- }
26
- export interface FlatTexte extends Partial<DocumentResult> {
27
- titre: string | null;
28
- titre_court: string | null;
29
- url_dossier_senat: string | null;
30
- url_dossier_assemblee: string | null;
31
- date_presentation: Date | null;
32
- date_depot: Date | null;
33
- date_publication_xml: Date | null;
34
- version: Version | null;
35
- divisions: Division[];
36
- expose_motifs?: ExposeDesMotifs | null;
37
- }
38
- export type Version = "RECT" | "RECT_BIS" | "RECT_TER" | "RECT_QUATER" | "RECT_QUINQUIES";
39
- export interface Step {
40
- eId: string;
41
- date: Date | null;
42
- type: string | null;
43
- session: string | null;
44
- numero: string | null;
45
- version: Version | null;
46
- outcome: string | null;
47
- }
48
- export interface Division {
49
- index: number;
50
- eId: string;
51
- tag: DivisionTag;
52
- level: number;
53
- headings: DivisionContent[];
54
- }
55
- export interface Article extends Division {
56
- alineas: Alinea[];
57
- }
58
- export interface DivisionContent {
59
- text: string | null;
60
- html?: string | null;
61
- }
62
- export interface Alinea extends DivisionContent {
63
- eId: string;
64
- heading: DivisionContent;
65
- pastille: string | null;
66
- text_avec_liens?: string | null;
67
- html_avec_liens?: string | null;
68
- }
69
- export interface ExposeDesMotifs {
70
- text: string | null;
71
- html: string | null;
72
- }
@@ -1,15 +0,0 @@
1
- export var DivisionType;
2
- (function (DivisionType) {
3
- DivisionType[DivisionType["tome"] = 1] = "tome";
4
- DivisionType[DivisionType["part"] = 2] = "part";
5
- DivisionType[DivisionType["book"] = 3] = "book";
6
- DivisionType[DivisionType["title"] = 4] = "title";
7
- DivisionType[DivisionType["subtitle"] = 5] = "subtitle";
8
- DivisionType[DivisionType["chapter"] = 6] = "chapter";
9
- DivisionType[DivisionType["section"] = 7] = "section";
10
- DivisionType[DivisionType["subsection"] = 8] = "subsection";
11
- DivisionType[DivisionType["paragraph"] = 9] = "paragraph";
12
- DivisionType[DivisionType["article"] = 10] = "article";
13
- DivisionType[DivisionType["alinea"] = 11] = "alinea";
14
- DivisionType[DivisionType["division"] = 12] = "division";
15
- })(DivisionType || (DivisionType = {}));
@@ -1,9 +0,0 @@
1
- import { z } from "zod";
2
- export declare const configSchema: z.ZodObject<{
3
- db: z.ZodObject<{
4
- host: z.ZodString;
5
- password: z.ZodString;
6
- user: z.ZodString;
7
- port: z.ZodCoercedNumber<unknown>;
8
- }, z.core.$strip>;
9
- }, z.core.$strip>;
@@ -1,10 +0,0 @@
1
- import { z } from "zod";
2
- const dbSchema = z.object({
3
- host: z.string().trim().min(1, "Must not be empty"),
4
- password: z.string().trim().min(1, "Must not be empty"),
5
- user: z.string().trim().min(1, "Must not be empty"),
6
- port: z.coerce.number().int().min(0).max(65535),
7
- });
8
- export const configSchema = z.object({
9
- db: dbSchema,
10
- });