riksdagsmonitor 0.8.59 → 0.8.62

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 (65) hide show
  1. package/dist/lib/cia/csv-utils.d.ts +75 -0
  2. package/dist/lib/cia/csv-utils.d.ts.map +1 -0
  3. package/dist/lib/cia/csv-utils.js +141 -0
  4. package/dist/lib/cia/csv-utils.js.map +1 -0
  5. package/dist/lib/cia/data-loader.d.ts +38 -348
  6. package/dist/lib/cia/data-loader.d.ts.map +1 -1
  7. package/dist/lib/cia/data-loader.js +54 -766
  8. package/dist/lib/cia/data-loader.js.map +1 -1
  9. package/dist/lib/cia/election-predictions.d.ts +1 -1
  10. package/dist/lib/cia/election-predictions.d.ts.map +1 -1
  11. package/dist/lib/cia/loaders/committees.d.ts +25 -0
  12. package/dist/lib/cia/loaders/committees.d.ts.map +1 -0
  13. package/dist/lib/cia/loaders/committees.js +110 -0
  14. package/dist/lib/cia/loaders/committees.js.map +1 -0
  15. package/dist/lib/cia/loaders/demographics.d.ts +22 -0
  16. package/dist/lib/cia/loaders/demographics.d.ts.map +1 -0
  17. package/dist/lib/cia/loaders/demographics.js +48 -0
  18. package/dist/lib/cia/loaders/demographics.js.map +1 -0
  19. package/dist/lib/cia/loaders/documents.d.ts +22 -0
  20. package/dist/lib/cia/loaders/documents.d.ts.map +1 -0
  21. package/dist/lib/cia/loaders/documents.js +51 -0
  22. package/dist/lib/cia/loaders/documents.js.map +1 -0
  23. package/dist/lib/cia/loaders/election.d.ts +24 -0
  24. package/dist/lib/cia/loaders/election.d.ts.map +1 -0
  25. package/dist/lib/cia/loaders/election.js +111 -0
  26. package/dist/lib/cia/loaders/election.js.map +1 -0
  27. package/dist/lib/cia/loaders/index.d.ts +26 -0
  28. package/dist/lib/cia/loaders/index.d.ts.map +1 -0
  29. package/dist/lib/cia/loaders/index.js +26 -0
  30. package/dist/lib/cia/loaders/index.js.map +1 -0
  31. package/dist/lib/cia/loaders/ministries.d.ts +22 -0
  32. package/dist/lib/cia/loaders/ministries.d.ts.map +1 -0
  33. package/dist/lib/cia/loaders/ministries.js +41 -0
  34. package/dist/lib/cia/loaders/ministries.js.map +1 -0
  35. package/dist/lib/cia/loaders/overview.d.ts +24 -0
  36. package/dist/lib/cia/loaders/overview.d.ts.map +1 -0
  37. package/dist/lib/cia/loaders/overview.js +96 -0
  38. package/dist/lib/cia/loaders/overview.js.map +1 -0
  39. package/dist/lib/cia/loaders/parties.d.ts +24 -0
  40. package/dist/lib/cia/loaders/parties.d.ts.map +1 -0
  41. package/dist/lib/cia/loaders/parties.js +92 -0
  42. package/dist/lib/cia/loaders/parties.js.map +1 -0
  43. package/dist/lib/cia/loaders/risk.d.ts +22 -0
  44. package/dist/lib/cia/loaders/risk.d.ts.map +1 -0
  45. package/dist/lib/cia/loaders/risk.js +38 -0
  46. package/dist/lib/cia/loaders/risk.js.map +1 -0
  47. package/dist/lib/cia/loaders/top10.d.ts +24 -0
  48. package/dist/lib/cia/loaders/top10.d.ts.map +1 -0
  49. package/dist/lib/cia/loaders/top10.js +68 -0
  50. package/dist/lib/cia/loaders/top10.js.map +1 -0
  51. package/dist/lib/cia/loaders/voting.d.ts +27 -0
  52. package/dist/lib/cia/loaders/voting.d.ts.map +1 -0
  53. package/dist/lib/cia/loaders/voting.js +108 -0
  54. package/dist/lib/cia/loaders/voting.js.map +1 -0
  55. package/dist/lib/cia/sources.d.ts +29 -0
  56. package/dist/lib/cia/sources.d.ts.map +1 -0
  57. package/dist/lib/cia/sources.js +162 -0
  58. package/dist/lib/cia/sources.js.map +1 -0
  59. package/dist/lib/cia/types.d.ts +324 -0
  60. package/dist/lib/cia/types.d.ts.map +1 -0
  61. package/dist/lib/cia/types.js +24 -0
  62. package/dist/lib/cia/types.js.map +1 -0
  63. package/dist/lib/cia/visualizations.d.ts +1 -1
  64. package/dist/lib/cia/visualizations.d.ts.map +1 -1
  65. package/package.json +1 -1
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @module CIA/Sources
3
+ * @category Intelligence Platform - Data Acquisition & Pipeline Management
4
+ *
5
+ * @description
6
+ * CIA CSV source URL configuration and class-level political-system
7
+ * constants used across the CIA data pipeline.
8
+ *
9
+ * Extracted from `data-loader.ts` so the URL inventory can be unit-tested,
10
+ * imported by alternative pipeline implementations, and modified without
11
+ * cracking open the orchestrator class. Pure data — no runtime side effects.
12
+ *
13
+ * @author Hack23 AB - Data Pipeline Engineering
14
+ * @license Apache-2.0
15
+ * @since 2026
16
+ */
17
+ import type { CSVSourceMap } from './types.js';
18
+ /** The 8 parties represented in the Swedish Riksdag. */
19
+ export declare const RIKSDAG_PARTIES: readonly string[];
20
+ /** Mapping of full Swedish committee names to their Riksdag org codes. */
21
+ export declare const COMMITTEE_ORG_CODES: Readonly<Record<string, string>>;
22
+ /**
23
+ * Heuristic divisor to estimate meetings/year from committee document counts.
24
+ * Assumption: ~25 published documents per active committee meeting.
25
+ */
26
+ export declare const COMMITTEE_DOCS_PER_MEETING_ESTIMATE = 25;
27
+ /** Deep-frozen CSV source inventory shared across the CIA pipeline. */
28
+ export declare const CSV_SOURCES: Readonly<CSVSourceMap>;
29
+ //# sourceMappingURL=sources.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sources.d.ts","sourceRoot":"","sources":["../../../src/browser/cia/sources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,wDAAwD;AACxD,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAE3C,CAAC;AAEH,0EAA0E;AAC1E,eAAO,MAAM,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmB/D,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,mCAAmC,KAAK,CAAC;AAoHtD,uEAAuE;AACvE,eAAO,MAAM,WAAW,EAAE,QAAQ,CAAC,YAAY,CAIpB,CAAC"}
@@ -0,0 +1,162 @@
1
+ /**
2
+ * @module CIA/Sources
3
+ * @category Intelligence Platform - Data Acquisition & Pipeline Management
4
+ *
5
+ * @description
6
+ * CIA CSV source URL configuration and class-level political-system
7
+ * constants used across the CIA data pipeline.
8
+ *
9
+ * Extracted from `data-loader.ts` so the URL inventory can be unit-tested,
10
+ * imported by alternative pipeline implementations, and modified without
11
+ * cracking open the orchestrator class. Pure data — no runtime side effects.
12
+ *
13
+ * @author Hack23 AB - Data Pipeline Engineering
14
+ * @license Apache-2.0
15
+ * @since 2026
16
+ */
17
+ /** The 8 parties represented in the Swedish Riksdag. */
18
+ export const RIKSDAG_PARTIES = Object.freeze([
19
+ 'S', 'M', 'SD', 'C', 'V', 'KD', 'L', 'MP'
20
+ ]);
21
+ /** Mapping of full Swedish committee names to their Riksdag org codes. */
22
+ export const COMMITTEE_ORG_CODES = Object.freeze({
23
+ 'Konstitutionsutskottet': 'KU',
24
+ 'Civilutskottet': 'CU',
25
+ 'Trafikutskottet': 'TU',
26
+ 'Näringsutskottet': 'NU',
27
+ 'Miljö- och jordbruksutskottet': 'MJU',
28
+ 'Utrikesutskottet': 'UU',
29
+ 'Arbetsmarknadsutskottet': 'AU',
30
+ 'Socialförsäkringsutskottet': 'SfU',
31
+ 'Socialutskottet': 'SoU',
32
+ 'Justitieutskottet': 'JuU',
33
+ 'Skatteutskottet': 'SkU',
34
+ 'EU-nämnden': 'EUN',
35
+ 'Kulturutskottet': 'KrU',
36
+ 'Utbildningsutskottet': 'UbU',
37
+ 'Finansutskottet': 'FiU',
38
+ 'Försvarsutskottet': 'FöU',
39
+ 'Lagutskottet': 'LU',
40
+ 'Bostadsutskottet': 'BoU'
41
+ });
42
+ /**
43
+ * Heuristic divisor to estimate meetings/year from committee document counts.
44
+ * Assumption: ~25 published documents per active committee meeting.
45
+ */
46
+ export const COMMITTEE_DOCS_PER_MEETING_ESTIMATE = 25;
47
+ /**
48
+ * CSV data source definitions – maps to real PostgreSQL view exports.
49
+ *
50
+ * Both the outer map and each inner descriptor are deep-frozen so that
51
+ * historical `CIADataLoader.CSV_SOURCES` consumers cannot mutate the shared
52
+ * source inventory.
53
+ */
54
+ const CSV_SOURCES_RAW = {
55
+ personStatus: {
56
+ local: 'distribution_person_status.csv',
57
+ description: 'Active MP counts by status'
58
+ },
59
+ riskByParty: {
60
+ local: 'distribution_risk_by_party.csv',
61
+ description: 'Risk levels per party'
62
+ },
63
+ riskLevels: {
64
+ local: 'distribution_politician_risk_levels.csv',
65
+ description: 'Aggregate risk level distribution'
66
+ },
67
+ annualBallots: {
68
+ local: 'voting/distribution_annual_ballots.csv',
69
+ description: 'Annual ballot/vote counts'
70
+ },
71
+ crisisResilience: {
72
+ local: 'risk/distribution_crisis_resilience.csv',
73
+ description: 'Coalition stability/resilience scores'
74
+ },
75
+ partyPerformance: {
76
+ local: 'party/distribution_party_performance.csv',
77
+ description: 'Party metrics (docs, motions, performance level)'
78
+ },
79
+ partyMetrics: {
80
+ local: 'party/view_party_performance_metrics_sample.csv',
81
+ description: 'Full party metrics with win rate, rebel rate, absence rate'
82
+ },
83
+ partyMomentum: {
84
+ local: 'party/distribution_party_momentum.csv',
85
+ description: 'Party trend direction and stability'
86
+ },
87
+ partyMembers: {
88
+ local: 'party/distribution_annual_party_members.csv',
89
+ description: 'Annual party membership counts'
90
+ },
91
+ influenceMetrics: {
92
+ local: 'politician/view_riksdagen_politician_influence_metrics_sample.csv',
93
+ description: 'MP influence scores and network connections'
94
+ },
95
+ riskSummary: {
96
+ local: 'politician/view_politician_risk_summary_sample.csv',
97
+ description: 'MP risk scores and assessments'
98
+ },
99
+ committeeProductivity: {
100
+ local: 'committee/distribution_committee_productivity.csv',
101
+ description: 'Committee productivity and member counts'
102
+ },
103
+ committeeActivity: {
104
+ local: 'committee/distribution_committee_activity.csv',
105
+ description: 'Committee document counts'
106
+ },
107
+ partyEffectiveness: {
108
+ local: 'party/distribution_party_effectiveness_trends.csv',
109
+ description: 'Party effectiveness trends with win rate'
110
+ },
111
+ electionForecast: {
112
+ local: 'election/election_forecast.csv',
113
+ description: 'Election 2026 seat predictions per party'
114
+ },
115
+ coalitionScenarios: {
116
+ local: 'election/coalition_scenarios.csv',
117
+ description: 'Coalition scenario probability modeling'
118
+ },
119
+ coalitionAlignment: {
120
+ local: 'party/distribution_coalition_alignment.csv',
121
+ description: 'Real party-pair voting alignment rates'
122
+ },
123
+ genderByParty: {
124
+ local: 'party/distribution_gender_by_party.csv',
125
+ description: 'Gender distribution per party'
126
+ },
127
+ experienceByParty: {
128
+ local: 'party/distribution_experience_by_party.csv',
129
+ description: 'Experience levels per party'
130
+ },
131
+ ministryEffectiveness: {
132
+ local: 'ministry/distribution_ministry_effectiveness.csv',
133
+ description: 'Ministry effectiveness assessments'
134
+ },
135
+ annualDocTypes: {
136
+ local: 'voting/distribution_annual_document_types.csv',
137
+ description: 'Annual document type counts'
138
+ },
139
+ decisionTrends: {
140
+ local: 'voting/distribution_decision_trends.csv',
141
+ description: 'Decision approval trends over time'
142
+ },
143
+ electionRegions: {
144
+ local: 'election/distribution_election_regions.csv',
145
+ description: 'MPs per election region'
146
+ },
147
+ governmentRoles: {
148
+ local: 'view_riksdagen_goverment_role_member_sample.csv',
149
+ description: 'Government minister role assignments'
150
+ },
151
+ riskEvolution: {
152
+ local: 'distribution_risk_evolution_temporal.csv',
153
+ description: 'Risk score changes over time'
154
+ },
155
+ behavioralPatterns: {
156
+ local: 'party/distribution_behavioral_patterns_by_party.csv',
157
+ description: 'Behavioral risk patterns per party'
158
+ }
159
+ };
160
+ /** Deep-frozen CSV source inventory shared across the CIA pipeline. */
161
+ export const CSV_SOURCES = Object.freeze(Object.fromEntries(Object.entries(CSV_SOURCES_RAW).map(([key, value]) => [key, Object.freeze({ ...value })])));
162
+ //# sourceMappingURL=sources.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sources.js","sourceRoot":"","sources":["../../../src/browser/cia/sources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,324 @@
1
+ /**
2
+ * @module CIA/Types
3
+ * @category Intelligence Platform - Data Acquisition & Pipeline Management
4
+ *
5
+ * @description
6
+ * CIA Intelligence Data Type Definitions.
7
+ *
8
+ * Pure TypeScript interface declarations (DTOs) consumed by the CIA data
9
+ * pipeline (`data-loader.ts`, `loaders/*.ts`) and the visualization layer
10
+ * (`visualizations.ts`). This module is **side-effect free** and contains no
11
+ * runtime logic — it can be imported independently of the HTTP / CSV client
12
+ * code, which keeps the visualization bundle small and lets consumers depend
13
+ * on the data shape without pulling in network code.
14
+ *
15
+ * Originally lived inline in `data-loader.ts`; extracted as part of the
16
+ * monolith decomposition (issue: refactor `data-loader.ts` into focused
17
+ * modules) so each interface can be consumed in isolation.
18
+ *
19
+ * @author Hack23 AB - Data Pipeline Engineering
20
+ * @license Apache-2.0
21
+ * @since 2026
22
+ */
23
+ /** Definition for a single CSV data source mapping. */
24
+ export interface CSVSourceDefinition {
25
+ /** Relative path within the csvBaseURL directory. */
26
+ readonly local: string;
27
+ /** Human-readable description of the data product. */
28
+ readonly description: string;
29
+ }
30
+ /** Map of all known CSV source categories. */
31
+ export interface CSVSourceMap {
32
+ personStatus: CSVSourceDefinition;
33
+ riskByParty: CSVSourceDefinition;
34
+ riskLevels: CSVSourceDefinition;
35
+ annualBallots: CSVSourceDefinition;
36
+ crisisResilience: CSVSourceDefinition;
37
+ partyPerformance: CSVSourceDefinition;
38
+ partyMetrics: CSVSourceDefinition;
39
+ partyMomentum: CSVSourceDefinition;
40
+ partyMembers: CSVSourceDefinition;
41
+ influenceMetrics: CSVSourceDefinition;
42
+ riskSummary: CSVSourceDefinition;
43
+ committeeProductivity: CSVSourceDefinition;
44
+ committeeActivity: CSVSourceDefinition;
45
+ partyEffectiveness: CSVSourceDefinition;
46
+ electionForecast: CSVSourceDefinition;
47
+ coalitionScenarios: CSVSourceDefinition;
48
+ coalitionAlignment: CSVSourceDefinition;
49
+ genderByParty: CSVSourceDefinition;
50
+ experienceByParty: CSVSourceDefinition;
51
+ ministryEffectiveness: CSVSourceDefinition;
52
+ annualDocTypes: CSVSourceDefinition;
53
+ decisionTrends: CSVSourceDefinition;
54
+ electionRegions: CSVSourceDefinition;
55
+ governmentRoles: CSVSourceDefinition;
56
+ riskEvolution: CSVSourceDefinition;
57
+ behavioralPatterns: CSVSourceDefinition;
58
+ }
59
+ /** A single parsed CSV row (header-keyed, auto-typed values). */
60
+ export interface CSVRow {
61
+ [key: string]: string | number;
62
+ }
63
+ export interface KeyMetrics {
64
+ totalMPs: number;
65
+ totalParties: number;
66
+ totalRiskRules: number;
67
+ governmentCoalition: string;
68
+ coalitionSeats: number;
69
+ oppositionSeats: number;
70
+ majorityMargin: number;
71
+ }
72
+ export interface RiskAlerts {
73
+ critical: number;
74
+ major: number;
75
+ minor: number;
76
+ last90Days: {
77
+ critical: number;
78
+ major: number;
79
+ minor: number;
80
+ };
81
+ }
82
+ export interface ParliamentActivity {
83
+ votesLastMonth: number;
84
+ documentsProcessed: number;
85
+ motionsSubmitted: number;
86
+ committeeMeetings: number;
87
+ }
88
+ export interface CoalitionStability {
89
+ stabilityScore: number;
90
+ riskLevel: string;
91
+ defectionProbability: number;
92
+ ideologicalTension: string;
93
+ }
94
+ export interface DataQuality {
95
+ completeness: number;
96
+ lastDataSync: string;
97
+ coverage: string;
98
+ }
99
+ export interface OverviewDashboard {
100
+ title: string;
101
+ description: string;
102
+ lastUpdated: string;
103
+ keyMetrics: KeyMetrics;
104
+ riskAlerts: RiskAlerts;
105
+ parliamentActivity: ParliamentActivity;
106
+ coalitionStability: CoalitionStability;
107
+ dataQuality: DataQuality;
108
+ _source: string;
109
+ }
110
+ export interface PartyMetricsData {
111
+ seats: number;
112
+ voteShare: number;
113
+ memberCount: number;
114
+ documentsAuthored: number;
115
+ motionsSubmitted: number;
116
+ successRate: number;
117
+ }
118
+ export interface PartyVoting {
119
+ totalVotes: number;
120
+ cohesionScore: number;
121
+ rebellionRate: number;
122
+ }
123
+ export interface PartyTrends {
124
+ supportTrend: string;
125
+ activityTrend: string;
126
+ performanceLevel: string;
127
+ }
128
+ export interface PartyEntry {
129
+ id: string;
130
+ partyName: string;
131
+ shortName: string;
132
+ metrics: PartyMetricsData;
133
+ voting: PartyVoting;
134
+ trends: PartyTrends;
135
+ _source: string;
136
+ }
137
+ export interface PartyPerformance {
138
+ title: string;
139
+ description: string;
140
+ lastUpdated: string;
141
+ parties: PartyEntry[];
142
+ _source: string;
143
+ }
144
+ export interface MPRanking {
145
+ rank: number;
146
+ id: string;
147
+ firstName: string;
148
+ lastName: string;
149
+ party: string;
150
+ role: string;
151
+ influenceScore: number;
152
+ networkConnections: number;
153
+ brokerClassification: string;
154
+ riskLevel: string;
155
+ riskScore: number;
156
+ _source: string;
157
+ }
158
+ export interface Top10Influential {
159
+ title: string;
160
+ description: string;
161
+ lastUpdated: string;
162
+ methodology: string;
163
+ rankings: MPRanking[];
164
+ _source: string;
165
+ }
166
+ export interface CommitteeEntry {
167
+ id: string;
168
+ name: string;
169
+ memberCount: number;
170
+ influenceScore: number;
171
+ documentsProcessed: number;
172
+ productivityLevel: string;
173
+ meetingsPerYear: number;
174
+ keyIssues: string[];
175
+ _source: string;
176
+ }
177
+ export interface NetworkNode {
178
+ id: string;
179
+ name: string;
180
+ size: number;
181
+ }
182
+ export interface NetworkEdge {
183
+ source: string;
184
+ target: string;
185
+ weight: number;
186
+ type: string;
187
+ }
188
+ export interface CommitteeNetwork {
189
+ title: string;
190
+ description: string;
191
+ lastUpdated: string;
192
+ committees: CommitteeEntry[];
193
+ networkGraph: {
194
+ nodes: NetworkNode[];
195
+ edges: NetworkEdge[];
196
+ };
197
+ crossCommitteeMPs: unknown[];
198
+ _source: string;
199
+ }
200
+ export interface VotingMatrix {
201
+ labels: string[];
202
+ partyNames: string[];
203
+ agreementMatrix: number[][];
204
+ }
205
+ export interface RebellionEntry {
206
+ party: string;
207
+ rebellionRate: number;
208
+ trend: string;
209
+ }
210
+ export interface VotingPatterns {
211
+ title: string;
212
+ description: string;
213
+ lastUpdated: string;
214
+ analysisPeriod: string;
215
+ votingMatrix: VotingMatrix;
216
+ keyIssues: unknown[];
217
+ rebellionTracking: RebellionEntry[];
218
+ _source: string;
219
+ }
220
+ export interface ElectionAnalysis {
221
+ forecast: {
222
+ parties: Array<{
223
+ name: string;
224
+ currentSeats: number;
225
+ predictedSeats: number;
226
+ change: number;
227
+ voteShare: number;
228
+ confidenceInterval?: {
229
+ min: number;
230
+ max: number;
231
+ };
232
+ }>;
233
+ };
234
+ coalitionScenarios: Array<{
235
+ name: string;
236
+ composition: string[];
237
+ totalSeats: number;
238
+ probability: number;
239
+ majority: boolean;
240
+ riskLevel: string;
241
+ }>;
242
+ keyFactors: string[];
243
+ electionDate?: string;
244
+ }
245
+ export interface MinistryEntry {
246
+ name: string;
247
+ effectiveness: string;
248
+ documentsProduced: number;
249
+ governmentBills: number;
250
+ year: number;
251
+ quarter: number;
252
+ }
253
+ export interface MinistryDashboard {
254
+ title: string;
255
+ description: string;
256
+ lastUpdated: string;
257
+ ministries: MinistryEntry[];
258
+ _source: string;
259
+ }
260
+ export interface GenderEntry {
261
+ party: string;
262
+ gender: string;
263
+ count: number;
264
+ }
265
+ export interface ExperienceEntry {
266
+ party: string;
267
+ experienceLevel: string;
268
+ politicianCount: number;
269
+ }
270
+ export interface DemographicsDashboard {
271
+ title: string;
272
+ description: string;
273
+ lastUpdated: string;
274
+ genderByParty: GenderEntry[];
275
+ experienceByParty: ExperienceEntry[];
276
+ _source: string;
277
+ }
278
+ export interface DocumentTypeEntry {
279
+ year: number;
280
+ documentType: string;
281
+ docCount: number;
282
+ }
283
+ export interface DecisionTrendEntry {
284
+ year: number;
285
+ month: number;
286
+ decisionCount: number;
287
+ approvedDecisions: number;
288
+ rejectedDecisions: number;
289
+ approvalRate: number;
290
+ }
291
+ export interface DocumentActivityDashboard {
292
+ title: string;
293
+ description: string;
294
+ lastUpdated: string;
295
+ documentTypes: DocumentTypeEntry[];
296
+ decisionTrends: DecisionTrendEntry[];
297
+ _source: string;
298
+ }
299
+ export interface RiskEvolutionEntry {
300
+ period: string;
301
+ severity: string;
302
+ politicianCount: number;
303
+ avgRiskScore: number;
304
+ }
305
+ export interface RiskEvolutionDashboard {
306
+ title: string;
307
+ description: string;
308
+ lastUpdated: string;
309
+ entries: RiskEvolutionEntry[];
310
+ _source: string;
311
+ }
312
+ export interface CIADataPayload {
313
+ overview: OverviewDashboard;
314
+ election: ElectionAnalysis;
315
+ partyPerf: PartyPerformance;
316
+ top10: Top10Influential;
317
+ committees: CommitteeNetwork;
318
+ votingPatterns: VotingPatterns;
319
+ ministry: MinistryDashboard;
320
+ demographics: DemographicsDashboard;
321
+ documentActivity: DocumentActivityDashboard;
322
+ riskEvolution: RiskEvolutionDashboard;
323
+ }
324
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/browser/cia/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * @module CIA/Types
3
+ * @category Intelligence Platform - Data Acquisition & Pipeline Management
4
+ *
5
+ * @description
6
+ * CIA Intelligence Data Type Definitions.
7
+ *
8
+ * Pure TypeScript interface declarations (DTOs) consumed by the CIA data
9
+ * pipeline (`data-loader.ts`, `loaders/*.ts`) and the visualization layer
10
+ * (`visualizations.ts`). This module is **side-effect free** and contains no
11
+ * runtime logic — it can be imported independently of the HTTP / CSV client
12
+ * code, which keeps the visualization bundle small and lets consumers depend
13
+ * on the data shape without pulling in network code.
14
+ *
15
+ * Originally lived inline in `data-loader.ts`; extracted as part of the
16
+ * monolith decomposition (issue: refactor `data-loader.ts` into focused
17
+ * modules) so each interface can be consumed in isolation.
18
+ *
19
+ * @author Hack23 AB - Data Pipeline Engineering
20
+ * @license Apache-2.0
21
+ * @since 2026
22
+ */
23
+ export {};
24
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/browser/cia/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
@@ -22,7 +22,7 @@
22
22
  *
23
23
  * @marketing Visual content factory — every rendered visualization is a potential marketing asset: embeddable widgets, shareable images, presentation slides, and report graphics. High-quality visualizations are the most shared content type, driving organic reach and brand recognition.
24
24
  * */
25
- import type { OverviewDashboard, PartyPerformance, Top10Influential, CommitteeNetwork, VotingPatterns, MinistryDashboard, DemographicsDashboard, DocumentActivityDashboard, RiskEvolutionDashboard } from './data-loader.js';
25
+ import type { OverviewDashboard, PartyPerformance, Top10Influential, CommitteeNetwork, VotingPatterns, MinistryDashboard, DemographicsDashboard, DocumentActivityDashboard, RiskEvolutionDashboard } from './types.js';
26
26
  /** Data bundle consumed by the renderer. */
27
27
  export interface RendererData {
28
28
  overview?: OverviewDashboard;
@@ -1 +1 @@
1
- {"version":3,"file":"visualizations.d.ts","sourceRoot":"","sources":["../../../src/browser/cia/visualizations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;KAuBK;AAEL,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EAGd,iBAAiB,EACjB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,kBAAkB,CAAC;AAY1B,4CAA4C;AAC5C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;IAC7C,aAAa,CAAC,EAAE,sBAAsB,CAAC;CACxC;AAWD,qBAAa,oBAAoB;IAC/B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAA+C;gBAE1E,IAAI,EAAE,YAAY;IAK9B,kCAAkC;IAClC,gBAAgB,IAAI,IAAI;IA0CxB,uCAAuC;IACvC,sBAAsB,IAAI,IAAI;IAmJ9B,8BAA8B;IAC9B,mBAAmB,IAAI,IAAI;IAqE3B,sCAAsC;IACtC,oBAAoB,IAAI,IAAI;IAqD5B,gCAAgC;IAChC,sBAAsB,IAAI,IAAI;IA6G9B,2CAA2C;IAC3C,yBAAyB,IAAI,IAAI;IA8DjC,wDAAwD;IACxD,kBAAkB,IAAI,IAAI;IAiH1B,uCAAuC;IACvC,sBAAsB,IAAI,IAAI;IA6D9B,mCAAmC;IACnC,mBAAmB,IAAI,IAAI;IAyD3B,wCAAwC;IACxC,OAAO,IAAI,IAAI;CAQhB"}
1
+ {"version":3,"file":"visualizations.d.ts","sourceRoot":"","sources":["../../../src/browser/cia/visualizations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;KAuBK;AAEL,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EAGd,iBAAiB,EACjB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACvB,MAAM,YAAY,CAAC;AAYpB,4CAA4C;AAC5C,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,gBAAgB,CAAC,EAAE,yBAAyB,CAAC;IAC7C,aAAa,CAAC,EAAE,sBAAsB,CAAC;CACxC;AAWD,qBAAa,oBAAoB;IAC/B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAA+C;gBAE1E,IAAI,EAAE,YAAY;IAK9B,kCAAkC;IAClC,gBAAgB,IAAI,IAAI;IA0CxB,uCAAuC;IACvC,sBAAsB,IAAI,IAAI;IAmJ9B,8BAA8B;IAC9B,mBAAmB,IAAI,IAAI;IAqE3B,sCAAsC;IACtC,oBAAoB,IAAI,IAAI;IAqD5B,gCAAgC;IAChC,sBAAsB,IAAI,IAAI;IA6G9B,2CAA2C;IAC3C,yBAAyB,IAAI,IAAI;IA8DjC,wDAAwD;IACxD,kBAAkB,IAAI,IAAI;IAiH1B,uCAAuC;IACvC,sBAAsB,IAAI,IAAI;IA6D9B,mCAAmC;IACnC,mBAAmB,IAAI,IAAI;IAyD3B,wCAAwC;IACxC,OAAO,IAAI,IAAI;CAQhB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "riksdagsmonitor",
3
- "version": "0.8.59",
3
+ "version": "0.8.62",
4
4
  "type": "module",
5
5
  "description": "Swedish Parliament (Riksdag) intelligence platform — TypeScript utilities for political data visualization, dashboards, and open data analysis with Chart.js and D3.js",
6
6
  "main": "dist/lib/shared/index.js",