riksdagsmonitor 0.8.21 → 0.8.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +53 -1
- package/dist/lib/dashboards/party-dashboard.js +2 -1
- package/dist/lib/dashboards/party-dashboard.js.map +1 -1
- package/dist/lib/dashboards/risk-dashboard.js +2 -1
- package/dist/lib/dashboards/risk-dashboard.js.map +1 -1
- package/dist/lib/shared/index.d.ts +0 -1
- package/dist/lib/shared/index.d.ts.map +1 -1
- package/dist/lib/shared/index.js +3 -1
- package/dist/lib/shared/index.js.map +1 -1
- package/dist/lib/shared/register-globals.d.ts +1 -1
- package/dist/lib/shared/register-globals.d.ts.map +1 -1
- package/dist/lib/shared/register-globals.js +7 -1
- package/dist/lib/shared/register-globals.js.map +1 -1
- package/package.json +54 -22
- package/dist/scripts/analysis-reader.d.ts +0 -241
- package/dist/scripts/analysis-reader.d.ts.map +0 -1
- package/dist/scripts/analysis-reader.js +0 -495
- package/dist/scripts/analysis-reader.js.map +0 -1
- package/dist/scripts/article-quality-enhancer.d.ts +0 -148
- package/dist/scripts/article-quality-enhancer.d.ts.map +0 -1
- package/dist/scripts/article-quality-enhancer.js +0 -430
- package/dist/scripts/article-quality-enhancer.js.map +0 -1
- package/dist/scripts/article-template/constants.d.ts +0 -104
- package/dist/scripts/article-template/constants.d.ts.map +0 -1
- package/dist/scripts/article-template/constants.js +0 -225
- package/dist/scripts/article-template/constants.js.map +0 -1
- package/dist/scripts/article-template/helpers.d.ts +0 -83
- package/dist/scripts/article-template/helpers.d.ts.map +0 -1
- package/dist/scripts/article-template/helpers.js +0 -236
- package/dist/scripts/article-template/helpers.js.map +0 -1
- package/dist/scripts/article-template/index.d.ts +0 -39
- package/dist/scripts/article-template/index.d.ts.map +0 -1
- package/dist/scripts/article-template/index.js +0 -37
- package/dist/scripts/article-template/index.js.map +0 -1
- package/dist/scripts/article-template/registry.d.ts +0 -64
- package/dist/scripts/article-template/registry.d.ts.map +0 -1
- package/dist/scripts/article-template/registry.js +0 -405
- package/dist/scripts/article-template/registry.js.map +0 -1
- package/dist/scripts/article-template/template.d.ts +0 -18
- package/dist/scripts/article-template/template.d.ts.map +0 -1
- package/dist/scripts/article-template/template.js +0 -359
- package/dist/scripts/article-template/template.js.map +0 -1
- package/dist/scripts/article-template/types.d.ts +0 -90
- package/dist/scripts/article-template/types.d.ts.map +0 -1
- package/dist/scripts/article-template/types.js +0 -96
- package/dist/scripts/article-template/types.js.map +0 -1
- package/dist/scripts/article-template.d.ts +0 -18
- package/dist/scripts/article-template.d.ts.map +0 -1
- package/dist/scripts/article-template.js +0 -18
- package/dist/scripts/article-template.js.map +0 -1
- package/dist/scripts/catalog-downloaded-data.d.ts +0 -66
- package/dist/scripts/catalog-downloaded-data.d.ts.map +0 -1
- package/dist/scripts/catalog-downloaded-data.js +0 -239
- package/dist/scripts/catalog-downloaded-data.js.map +0 -1
- package/dist/scripts/check-cia-schema-updates.d.ts +0 -186
- package/dist/scripts/check-cia-schema-updates.d.ts.map +0 -1
- package/dist/scripts/check-cia-schema-updates.js +0 -363
- package/dist/scripts/check-cia-schema-updates.js.map +0 -1
- package/dist/scripts/data-transformers/calendar.d.ts +0 -16
- package/dist/scripts/data-transformers/calendar.d.ts.map +0 -1
- package/dist/scripts/data-transformers/calendar.js +0 -137
- package/dist/scripts/data-transformers/calendar.js.map +0 -1
- package/dist/scripts/data-transformers/constants/committee-names.d.ts +0 -15
- package/dist/scripts/data-transformers/constants/committee-names.d.ts.map +0 -1
- package/dist/scripts/data-transformers/constants/committee-names.js +0 -30
- package/dist/scripts/data-transformers/constants/committee-names.js.map +0 -1
- package/dist/scripts/data-transformers/constants/content-labels-part1.d.ts +0 -11
- package/dist/scripts/data-transformers/constants/content-labels-part1.d.ts.map +0 -1
- package/dist/scripts/data-transformers/constants/content-labels-part1.js +0 -900
- package/dist/scripts/data-transformers/constants/content-labels-part1.js.map +0 -1
- package/dist/scripts/data-transformers/constants/content-labels-part2.d.ts +0 -11
- package/dist/scripts/data-transformers/constants/content-labels-part2.d.ts.map +0 -1
- package/dist/scripts/data-transformers/constants/content-labels-part2.js +0 -900
- package/dist/scripts/data-transformers/constants/content-labels-part2.js.map +0 -1
- package/dist/scripts/data-transformers/constants/content-labels.d.ts +0 -13
- package/dist/scripts/data-transformers/constants/content-labels.d.ts.map +0 -1
- package/dist/scripts/data-transformers/constants/content-labels.js +0 -18
- package/dist/scripts/data-transformers/constants/content-labels.js.map +0 -1
- package/dist/scripts/data-transformers/constants/index.d.ts +0 -15
- package/dist/scripts/data-transformers/constants/index.d.ts.map +0 -1
- package/dist/scripts/data-transformers/constants/index.js +0 -15
- package/dist/scripts/data-transformers/constants/index.js.map +0 -1
- package/dist/scripts/data-transformers/constants/locale-map.d.ts +0 -13
- package/dist/scripts/data-transformers/constants/locale-map.d.ts.map +0 -1
- package/dist/scripts/data-transformers/constants/locale-map.js +0 -17
- package/dist/scripts/data-transformers/constants/locale-map.js.map +0 -1
- package/dist/scripts/data-transformers/constants.d.ts +0 -14
- package/dist/scripts/data-transformers/constants.d.ts.map +0 -1
- package/dist/scripts/data-transformers/constants.js +0 -14
- package/dist/scripts/data-transformers/constants.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/ai-mindmap-analyzer.d.ts +0 -64
- package/dist/scripts/data-transformers/content-generators/ai-mindmap-analyzer.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/ai-mindmap-analyzer.js +0 -805
- package/dist/scripts/data-transformers/content-generators/ai-mindmap-analyzer.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/cia-overview-section.d.ts +0 -50
- package/dist/scripts/data-transformers/content-generators/cia-overview-section.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/cia-overview-section.js +0 -310
- package/dist/scripts/data-transformers/content-generators/cia-overview-section.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/committee.d.ts +0 -12
- package/dist/scripts/data-transformers/content-generators/committee.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/committee.js +0 -247
- package/dist/scripts/data-transformers/content-generators/committee.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/dashboard-section.d.ts +0 -124
- package/dist/scripts/data-transformers/content-generators/dashboard-section.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/dashboard-section.js +0 -564
- package/dist/scripts/data-transformers/content-generators/dashboard-section.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/economic-dashboard-section.d.ts +0 -82
- package/dist/scripts/data-transformers/content-generators/economic-dashboard-section.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/economic-dashboard-section.js +0 -321
- package/dist/scripts/data-transformers/content-generators/economic-dashboard-section.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/generic.d.ts +0 -12
- package/dist/scripts/data-transformers/content-generators/generic.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/generic.js +0 -295
- package/dist/scripts/data-transformers/content-generators/generic.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/index.d.ts +0 -84
- package/dist/scripts/data-transformers/content-generators/index.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/index.js +0 -47
- package/dist/scripts/data-transformers/content-generators/index.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/interpellations.d.ts +0 -12
- package/dist/scripts/data-transformers/content-generators/interpellations.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/interpellations.js +0 -124
- package/dist/scripts/data-transformers/content-generators/interpellations.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/mindmap-section.d.ts +0 -137
- package/dist/scripts/data-transformers/content-generators/mindmap-section.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/mindmap-section.js +0 -286
- package/dist/scripts/data-transformers/content-generators/mindmap-section.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/month-ahead.d.ts +0 -17
- package/dist/scripts/data-transformers/content-generators/month-ahead.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/month-ahead.js +0 -212
- package/dist/scripts/data-transformers/content-generators/month-ahead.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/monthly-review.d.ts +0 -17
- package/dist/scripts/data-transformers/content-generators/monthly-review.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/monthly-review.js +0 -173
- package/dist/scripts/data-transformers/content-generators/monthly-review.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/motions.d.ts +0 -12
- package/dist/scripts/data-transformers/content-generators/motions.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/motions.js +0 -158
- package/dist/scripts/data-transformers/content-generators/motions.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/newsworthiness.d.ts +0 -62
- package/dist/scripts/data-transformers/content-generators/newsworthiness.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/newsworthiness.js +0 -254
- package/dist/scripts/data-transformers/content-generators/newsworthiness.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/propositions.d.ts +0 -12
- package/dist/scripts/data-transformers/content-generators/propositions.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/propositions.js +0 -263
- package/dist/scripts/data-transformers/content-generators/propositions.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/sankey-section.d.ts +0 -92
- package/dist/scripts/data-transformers/content-generators/sankey-section.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/sankey-section.js +0 -257
- package/dist/scripts/data-transformers/content-generators/sankey-section.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/shared.d.ts +0 -139
- package/dist/scripts/data-transformers/content-generators/shared.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/shared.js +0 -935
- package/dist/scripts/data-transformers/content-generators/shared.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/swot-section.d.ts +0 -50
- package/dist/scripts/data-transformers/content-generators/swot-section.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/swot-section.js +0 -177
- package/dist/scripts/data-transformers/content-generators/swot-section.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators/week-ahead.d.ts +0 -12
- package/dist/scripts/data-transformers/content-generators/week-ahead.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators/week-ahead.js +0 -332
- package/dist/scripts/data-transformers/content-generators/week-ahead.js.map +0 -1
- package/dist/scripts/data-transformers/content-generators.d.ts +0 -15
- package/dist/scripts/data-transformers/content-generators.d.ts.map +0 -1
- package/dist/scripts/data-transformers/content-generators.js +0 -14
- package/dist/scripts/data-transformers/content-generators.js.map +0 -1
- package/dist/scripts/data-transformers/document-analysis.d.ts +0 -58
- package/dist/scripts/data-transformers/document-analysis.d.ts.map +0 -1
- package/dist/scripts/data-transformers/document-analysis.js +0 -396
- package/dist/scripts/data-transformers/document-analysis.js.map +0 -1
- package/dist/scripts/data-transformers/helpers.d.ts +0 -144
- package/dist/scripts/data-transformers/helpers.d.ts.map +0 -1
- package/dist/scripts/data-transformers/helpers.js +0 -408
- package/dist/scripts/data-transformers/helpers.js.map +0 -1
- package/dist/scripts/data-transformers/index.d.ts +0 -45
- package/dist/scripts/data-transformers/index.d.ts.map +0 -1
- package/dist/scripts/data-transformers/index.js +0 -66
- package/dist/scripts/data-transformers/index.js.map +0 -1
- package/dist/scripts/data-transformers/metadata.d.ts +0 -42
- package/dist/scripts/data-transformers/metadata.d.ts.map +0 -1
- package/dist/scripts/data-transformers/metadata.js +0 -385
- package/dist/scripts/data-transformers/metadata.js.map +0 -1
- package/dist/scripts/data-transformers/policy-analysis.d.ts +0 -105
- package/dist/scripts/data-transformers/policy-analysis.d.ts.map +0 -1
- package/dist/scripts/data-transformers/policy-analysis.js +0 -686
- package/dist/scripts/data-transformers/policy-analysis.js.map +0 -1
- package/dist/scripts/data-transformers/risk-analysis.d.ts +0 -104
- package/dist/scripts/data-transformers/risk-analysis.d.ts.map +0 -1
- package/dist/scripts/data-transformers/risk-analysis.js +0 -279
- package/dist/scripts/data-transformers/risk-analysis.js.map +0 -1
- package/dist/scripts/data-transformers/types.d.ts +0 -260
- package/dist/scripts/data-transformers/types.d.ts.map +0 -1
- package/dist/scripts/data-transformers/types.js +0 -11
- package/dist/scripts/data-transformers/types.js.map +0 -1
- package/dist/scripts/data-transformers.d.ts +0 -23
- package/dist/scripts/data-transformers.d.ts.map +0 -1
- package/dist/scripts/data-transformers.js +0 -35
- package/dist/scripts/data-transformers.js.map +0 -1
- package/dist/scripts/deep-inspection/index.d.ts +0 -55
- package/dist/scripts/deep-inspection/index.d.ts.map +0 -1
- package/dist/scripts/deep-inspection/index.js +0 -66
- package/dist/scripts/deep-inspection/index.js.map +0 -1
- package/dist/scripts/detect-swedish-leakage.d.ts +0 -69
- package/dist/scripts/detect-swedish-leakage.d.ts.map +0 -1
- package/dist/scripts/detect-swedish-leakage.js +0 -417
- package/dist/scripts/detect-swedish-leakage.js.map +0 -1
- package/dist/scripts/editorial-framework.d.ts +0 -121
- package/dist/scripts/editorial-framework.d.ts.map +0 -1
- package/dist/scripts/editorial-framework.js +0 -364
- package/dist/scripts/editorial-framework.js.map +0 -1
- package/dist/scripts/editorial-pillars.d.ts +0 -43
- package/dist/scripts/editorial-pillars.d.ts.map +0 -1
- package/dist/scripts/editorial-pillars.js +0 -215
- package/dist/scripts/editorial-pillars.js.map +0 -1
- package/dist/scripts/extract-news-metadata.d.ts +0 -12
- package/dist/scripts/extract-news-metadata.d.ts.map +0 -1
- package/dist/scripts/extract-news-metadata.js +0 -107
- package/dist/scripts/extract-news-metadata.js.map +0 -1
- package/dist/scripts/extract-vocabulary.d.ts +0 -15
- package/dist/scripts/extract-vocabulary.d.ts.map +0 -1
- package/dist/scripts/extract-vocabulary.js +0 -255
- package/dist/scripts/extract-vocabulary.js.map +0 -1
- package/dist/scripts/fix-article-navigation.d.ts +0 -37
- package/dist/scripts/fix-article-navigation.d.ts.map +0 -1
- package/dist/scripts/fix-article-navigation.js +0 -198
- package/dist/scripts/fix-article-navigation.js.map +0 -1
- package/dist/scripts/fix-keywords-localization.d.ts +0 -18
- package/dist/scripts/fix-keywords-localization.d.ts.map +0 -1
- package/dist/scripts/fix-keywords-localization.js +0 -270
- package/dist/scripts/fix-keywords-localization.js.map +0 -1
- package/dist/scripts/fix-old-articles-branding.d.ts +0 -17
- package/dist/scripts/fix-old-articles-branding.d.ts.map +0 -1
- package/dist/scripts/fix-old-articles-branding.js +0 -229
- package/dist/scripts/fix-old-articles-branding.js.map +0 -1
- package/dist/scripts/generate-news-backport.d.ts +0 -16
- package/dist/scripts/generate-news-backport.d.ts.map +0 -1
- package/dist/scripts/generate-news-backport.js +0 -379
- package/dist/scripts/generate-news-backport.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/ai-analysis-pipeline.d.ts +0 -141
- package/dist/scripts/generate-news-enhanced/ai-analysis-pipeline.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/ai-analysis-pipeline.js +0 -546
- package/dist/scripts/generate-news-enhanced/ai-analysis-pipeline.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/analysis-cache.d.ts +0 -59
- package/dist/scripts/generate-news-enhanced/analysis-cache.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/analysis-cache.js +0 -116
- package/dist/scripts/generate-news-enhanced/analysis-cache.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/analysis-labels.d.ts +0 -58
- package/dist/scripts/generate-news-enhanced/analysis-labels.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/analysis-labels.js +0 -144
- package/dist/scripts/generate-news-enhanced/analysis-labels.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/config.d.ts +0 -58
- package/dist/scripts/generate-news-enhanced/config.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/config.js +0 -286
- package/dist/scripts/generate-news-enhanced/config.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/generators.d.ts +0 -119
- package/dist/scripts/generate-news-enhanced/generators.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/generators.js +0 -2131
- package/dist/scripts/generate-news-enhanced/generators.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/helpers.d.ts +0 -122
- package/dist/scripts/generate-news-enhanced/helpers.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/helpers.js +0 -468
- package/dist/scripts/generate-news-enhanced/helpers.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/index.d.ts +0 -19
- package/dist/scripts/generate-news-enhanced/index.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/index.js +0 -221
- package/dist/scripts/generate-news-enhanced/index.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/swot-analyzer.d.ts +0 -46
- package/dist/scripts/generate-news-enhanced/swot-analyzer.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/swot-analyzer.js +0 -1227
- package/dist/scripts/generate-news-enhanced/swot-analyzer.js.map +0 -1
- package/dist/scripts/generate-news-enhanced/types.d.ts +0 -34
- package/dist/scripts/generate-news-enhanced/types.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced/types.js +0 -9
- package/dist/scripts/generate-news-enhanced/types.js.map +0 -1
- package/dist/scripts/generate-news-enhanced.d.ts +0 -25
- package/dist/scripts/generate-news-enhanced.d.ts.map +0 -1
- package/dist/scripts/generate-news-enhanced.js +0 -37
- package/dist/scripts/generate-news-enhanced.js.map +0 -1
- package/dist/scripts/generate-news-indexes/constants.d.ts +0 -20
- package/dist/scripts/generate-news-indexes/constants.d.ts.map +0 -1
- package/dist/scripts/generate-news-indexes/constants.js +0 -308
- package/dist/scripts/generate-news-indexes/constants.js.map +0 -1
- package/dist/scripts/generate-news-indexes/helpers.d.ts +0 -73
- package/dist/scripts/generate-news-indexes/helpers.d.ts.map +0 -1
- package/dist/scripts/generate-news-indexes/helpers.js +0 -352
- package/dist/scripts/generate-news-indexes/helpers.js.map +0 -1
- package/dist/scripts/generate-news-indexes/index.d.ts +0 -20
- package/dist/scripts/generate-news-indexes/index.d.ts.map +0 -1
- package/dist/scripts/generate-news-indexes/index.js +0 -75
- package/dist/scripts/generate-news-indexes/index.js.map +0 -1
- package/dist/scripts/generate-news-indexes/template.d.ts +0 -25
- package/dist/scripts/generate-news-indexes/template.d.ts.map +0 -1
- package/dist/scripts/generate-news-indexes/template.js +0 -644
- package/dist/scripts/generate-news-indexes/template.js.map +0 -1
- package/dist/scripts/generate-news-indexes/types.d.ts +0 -96
- package/dist/scripts/generate-news-indexes/types.d.ts.map +0 -1
- package/dist/scripts/generate-news-indexes/types.js +0 -9
- package/dist/scripts/generate-news-indexes/types.js.map +0 -1
- package/dist/scripts/generate-news-indexes.d.ts +0 -20
- package/dist/scripts/generate-news-indexes.d.ts.map +0 -1
- package/dist/scripts/generate-news-indexes.js +0 -19
- package/dist/scripts/generate-news-indexes.js.map +0 -1
- package/dist/scripts/generate-rss.d.ts +0 -48
- package/dist/scripts/generate-rss.d.ts.map +0 -1
- package/dist/scripts/generate-rss.js +0 -299
- package/dist/scripts/generate-rss.js.map +0 -1
- package/dist/scripts/generate-sitemap-html.d.ts +0 -79
- package/dist/scripts/generate-sitemap-html.d.ts.map +0 -1
- package/dist/scripts/generate-sitemap-html.js +0 -878
- package/dist/scripts/generate-sitemap-html.js.map +0 -1
- package/dist/scripts/generate-sitemap.d.ts +0 -23
- package/dist/scripts/generate-sitemap.d.ts.map +0 -1
- package/dist/scripts/generate-sitemap.js +0 -476
- package/dist/scripts/generate-sitemap.js.map +0 -1
- package/dist/scripts/generate-types-from-cia-schemas.d.ts +0 -176
- package/dist/scripts/generate-types-from-cia-schemas.d.ts.map +0 -1
- package/dist/scripts/generate-types-from-cia-schemas.js +0 -318
- package/dist/scripts/generate-types-from-cia-schemas.js.map +0 -1
- package/dist/scripts/government-role-validator.d.ts +0 -65
- package/dist/scripts/government-role-validator.d.ts.map +0 -1
- package/dist/scripts/government-role-validator.js +0 -217
- package/dist/scripts/government-role-validator.js.map +0 -1
- package/dist/scripts/html-utils.d.ts +0 -17
- package/dist/scripts/html-utils.d.ts.map +0 -1
- package/dist/scripts/html-utils.js +0 -29
- package/dist/scripts/html-utils.js.map +0 -1
- package/dist/scripts/load-cia-stats.d.ts +0 -89
- package/dist/scripts/load-cia-stats.d.ts.map +0 -1
- package/dist/scripts/load-cia-stats.js +0 -400
- package/dist/scripts/load-cia-stats.js.map +0 -1
- package/dist/scripts/mcp-client/client.d.ts +0 -73
- package/dist/scripts/mcp-client/client.d.ts.map +0 -1
- package/dist/scripts/mcp-client/client.js +0 -526
- package/dist/scripts/mcp-client/client.js.map +0 -1
- package/dist/scripts/mcp-client/document-types.d.ts +0 -23
- package/dist/scripts/mcp-client/document-types.d.ts.map +0 -1
- package/dist/scripts/mcp-client/document-types.js +0 -62
- package/dist/scripts/mcp-client/document-types.js.map +0 -1
- package/dist/scripts/mcp-client/index.d.ts +0 -34
- package/dist/scripts/mcp-client/index.d.ts.map +0 -1
- package/dist/scripts/mcp-client/index.js +0 -67
- package/dist/scripts/mcp-client/index.js.map +0 -1
- package/dist/scripts/mcp-client/transport.d.ts +0 -32
- package/dist/scripts/mcp-client/transport.d.ts.map +0 -1
- package/dist/scripts/mcp-client/transport.js +0 -102
- package/dist/scripts/mcp-client/transport.js.map +0 -1
- package/dist/scripts/mcp-client.d.ts +0 -18
- package/dist/scripts/mcp-client.d.ts.map +0 -1
- package/dist/scripts/mcp-client.js +0 -18
- package/dist/scripts/mcp-client.js.map +0 -1
- package/dist/scripts/mcp-query-cli.d.ts +0 -25
- package/dist/scripts/mcp-query-cli.d.ts.map +0 -1
- package/dist/scripts/mcp-query-cli.js +0 -66
- package/dist/scripts/mcp-query-cli.js.map +0 -1
- package/dist/scripts/news-types/breaking-news.d.ts +0 -178
- package/dist/scripts/news-types/breaking-news.d.ts.map +0 -1
- package/dist/scripts/news-types/breaking-news.js +0 -432
- package/dist/scripts/news-types/breaking-news.js.map +0 -1
- package/dist/scripts/news-types/committee-reports.d.ts +0 -212
- package/dist/scripts/news-types/committee-reports.d.ts.map +0 -1
- package/dist/scripts/news-types/committee-reports.js +0 -404
- package/dist/scripts/news-types/committee-reports.js.map +0 -1
- package/dist/scripts/news-types/month-ahead.d.ts +0 -71
- package/dist/scripts/news-types/month-ahead.d.ts.map +0 -1
- package/dist/scripts/news-types/month-ahead.js +0 -392
- package/dist/scripts/news-types/month-ahead.js.map +0 -1
- package/dist/scripts/news-types/monthly-review.d.ts +0 -61
- package/dist/scripts/news-types/monthly-review.d.ts.map +0 -1
- package/dist/scripts/news-types/monthly-review.js +0 -417
- package/dist/scripts/news-types/monthly-review.js.map +0 -1
- package/dist/scripts/news-types/motions.d.ts +0 -214
- package/dist/scripts/news-types/motions.d.ts.map +0 -1
- package/dist/scripts/news-types/motions.js +0 -447
- package/dist/scripts/news-types/motions.js.map +0 -1
- package/dist/scripts/news-types/propositions.d.ts +0 -204
- package/dist/scripts/news-types/propositions.d.ts.map +0 -1
- package/dist/scripts/news-types/propositions.js +0 -401
- package/dist/scripts/news-types/propositions.js.map +0 -1
- package/dist/scripts/news-types/week-ahead.d.ts +0 -231
- package/dist/scripts/news-types/week-ahead.d.ts.map +0 -1
- package/dist/scripts/news-types/week-ahead.js +0 -441
- package/dist/scripts/news-types/week-ahead.js.map +0 -1
- package/dist/scripts/news-types/weekly-review/analysis.d.ts +0 -47
- package/dist/scripts/news-types/weekly-review/analysis.d.ts.map +0 -1
- package/dist/scripts/news-types/weekly-review/analysis.js +0 -276
- package/dist/scripts/news-types/weekly-review/analysis.js.map +0 -1
- package/dist/scripts/news-types/weekly-review/data-loader.d.ts +0 -51
- package/dist/scripts/news-types/weekly-review/data-loader.d.ts.map +0 -1
- package/dist/scripts/news-types/weekly-review/data-loader.js +0 -298
- package/dist/scripts/news-types/weekly-review/data-loader.js.map +0 -1
- package/dist/scripts/news-types/weekly-review/generator.d.ts +0 -18
- package/dist/scripts/news-types/weekly-review/generator.d.ts.map +0 -1
- package/dist/scripts/news-types/weekly-review/generator.js +0 -284
- package/dist/scripts/news-types/weekly-review/generator.js.map +0 -1
- package/dist/scripts/news-types/weekly-review/index.d.ts +0 -20
- package/dist/scripts/news-types/weekly-review/index.d.ts.map +0 -1
- package/dist/scripts/news-types/weekly-review/index.js +0 -23
- package/dist/scripts/news-types/weekly-review/index.js.map +0 -1
- package/dist/scripts/news-types/weekly-review/types.d.ts +0 -72
- package/dist/scripts/news-types/weekly-review/types.d.ts.map +0 -1
- package/dist/scripts/news-types/weekly-review/types.js +0 -20
- package/dist/scripts/news-types/weekly-review/types.js.map +0 -1
- package/dist/scripts/news-types/weekly-review/validation.d.ts +0 -10
- package/dist/scripts/news-types/weekly-review/validation.d.ts.map +0 -1
- package/dist/scripts/news-types/weekly-review/validation.js +0 -95
- package/dist/scripts/news-types/weekly-review/validation.js.map +0 -1
- package/dist/scripts/news-types/weekly-review.d.ts +0 -15
- package/dist/scripts/news-types/weekly-review.d.ts.map +0 -1
- package/dist/scripts/news-types/weekly-review.js +0 -14
- package/dist/scripts/news-types/weekly-review.js.map +0 -1
- package/dist/scripts/party-variants.d.ts +0 -23
- package/dist/scripts/party-variants.d.ts.map +0 -1
- package/dist/scripts/party-variants.js +0 -50
- package/dist/scripts/party-variants.js.map +0 -1
- package/dist/scripts/pipeline/index.d.ts +0 -19
- package/dist/scripts/pipeline/index.d.ts.map +0 -1
- package/dist/scripts/pipeline/index.js +0 -17
- package/dist/scripts/pipeline/index.js.map +0 -1
- package/dist/scripts/pipeline/orchestrator.d.ts +0 -56
- package/dist/scripts/pipeline/orchestrator.d.ts.map +0 -1
- package/dist/scripts/pipeline/orchestrator.js +0 -147
- package/dist/scripts/pipeline/orchestrator.js.map +0 -1
- package/dist/scripts/pipeline/types.d.ts +0 -117
- package/dist/scripts/pipeline/types.d.ts.map +0 -1
- package/dist/scripts/pipeline/types.js +0 -13
- package/dist/scripts/pipeline/types.js.map +0 -1
- package/dist/scripts/pipeline/validation.d.ts +0 -66
- package/dist/scripts/pipeline/validation.d.ts.map +0 -1
- package/dist/scripts/pipeline/validation.js +0 -129
- package/dist/scripts/pipeline/validation.js.map +0 -1
- package/dist/scripts/populate-analysis-data.d.ts +0 -41
- package/dist/scripts/populate-analysis-data.d.ts.map +0 -1
- package/dist/scripts/populate-analysis-data.js +0 -255
- package/dist/scripts/populate-analysis-data.js.map +0 -1
- package/dist/scripts/pre-article-analysis/data-downloader.d.ts +0 -80
- package/dist/scripts/pre-article-analysis/data-downloader.d.ts.map +0 -1
- package/dist/scripts/pre-article-analysis/data-downloader.js +0 -230
- package/dist/scripts/pre-article-analysis/data-downloader.js.map +0 -1
- package/dist/scripts/pre-article-analysis/data-persistence.d.ts +0 -141
- package/dist/scripts/pre-article-analysis/data-persistence.d.ts.map +0 -1
- package/dist/scripts/pre-article-analysis/data-persistence.js +0 -345
- package/dist/scripts/pre-article-analysis/data-persistence.js.map +0 -1
- package/dist/scripts/pre-article-analysis/markdown-serializer.d.ts +0 -158
- package/dist/scripts/pre-article-analysis/markdown-serializer.d.ts.map +0 -1
- package/dist/scripts/pre-article-analysis/markdown-serializer.js +0 -648
- package/dist/scripts/pre-article-analysis/markdown-serializer.js.map +0 -1
- package/dist/scripts/pre-article-analysis/pdf-converter.d.ts +0 -58
- package/dist/scripts/pre-article-analysis/pdf-converter.d.ts.map +0 -1
- package/dist/scripts/pre-article-analysis/pdf-converter.js +0 -142
- package/dist/scripts/pre-article-analysis/pdf-converter.js.map +0 -1
- package/dist/scripts/pre-article-analysis.d.ts +0 -41
- package/dist/scripts/pre-article-analysis.d.ts.map +0 -1
- package/dist/scripts/pre-article-analysis.js +0 -591
- package/dist/scripts/pre-article-analysis.js.map +0 -1
- package/dist/scripts/scb-client.d.ts +0 -104
- package/dist/scripts/scb-client.d.ts.map +0 -1
- package/dist/scripts/scb-client.js +0 -286
- package/dist/scripts/scb-client.js.map +0 -1
- package/dist/scripts/scb-context.d.ts +0 -88
- package/dist/scripts/scb-context.d.ts.map +0 -1
- package/dist/scripts/scb-context.js +0 -307
- package/dist/scripts/scb-context.js.map +0 -1
- package/dist/scripts/shared/version.d.ts +0 -9
- package/dist/scripts/shared/version.d.ts.map +0 -1
- package/dist/scripts/shared/version.js +0 -28
- package/dist/scripts/shared/version.js.map +0 -1
- package/dist/scripts/statistical-claims-detector.d.ts +0 -119
- package/dist/scripts/statistical-claims-detector.d.ts.map +0 -1
- package/dist/scripts/statistical-claims-detector.js +0 -391
- package/dist/scripts/statistical-claims-detector.js.map +0 -1
- package/dist/scripts/sync-cia-schemas.d.ts +0 -52
- package/dist/scripts/sync-cia-schemas.d.ts.map +0 -1
- package/dist/scripts/sync-cia-schemas.js +0 -195
- package/dist/scripts/sync-cia-schemas.js.map +0 -1
- package/dist/scripts/translation-dictionary.d.ts +0 -45
- package/dist/scripts/translation-dictionary.d.ts.map +0 -1
- package/dist/scripts/translation-dictionary.js +0 -3642
- package/dist/scripts/translation-dictionary.js.map +0 -1
- package/dist/scripts/types/article.d.ts +0 -392
- package/dist/scripts/types/article.d.ts.map +0 -1
- package/dist/scripts/types/article.js +0 -6
- package/dist/scripts/types/article.js.map +0 -1
- package/dist/scripts/types/content.d.ts +0 -167
- package/dist/scripts/types/content.d.ts.map +0 -1
- package/dist/scripts/types/content.js +0 -6
- package/dist/scripts/types/content.js.map +0 -1
- package/dist/scripts/types/editorial.d.ts +0 -17
- package/dist/scripts/types/editorial.d.ts.map +0 -1
- package/dist/scripts/types/editorial.js +0 -6
- package/dist/scripts/types/editorial.js.map +0 -1
- package/dist/scripts/types/language.d.ts +0 -7
- package/dist/scripts/types/language.d.ts.map +0 -1
- package/dist/scripts/types/language.js +0 -6
- package/dist/scripts/types/language.js.map +0 -1
- package/dist/scripts/types/mcp.d.ts +0 -117
- package/dist/scripts/types/mcp.d.ts.map +0 -1
- package/dist/scripts/types/mcp.js +0 -6
- package/dist/scripts/types/mcp.js.map +0 -1
- package/dist/scripts/types/party.d.ts +0 -9
- package/dist/scripts/types/party.d.ts.map +0 -1
- package/dist/scripts/types/party.js +0 -6
- package/dist/scripts/types/party.js.map +0 -1
- package/dist/scripts/types/validation.d.ts +0 -136
- package/dist/scripts/types/validation.d.ts.map +0 -1
- package/dist/scripts/types/validation.js +0 -6
- package/dist/scripts/types/validation.js.map +0 -1
- package/dist/scripts/types/workflow.d.ts +0 -78
- package/dist/scripts/types/workflow.d.ts.map +0 -1
- package/dist/scripts/types/workflow.js +0 -6
- package/dist/scripts/types/workflow.js.map +0 -1
- package/dist/scripts/update-stats-from-cia.d.ts +0 -44
- package/dist/scripts/update-stats-from-cia.d.ts.map +0 -1
- package/dist/scripts/update-stats-from-cia.js +0 -310
- package/dist/scripts/update-stats-from-cia.js.map +0 -1
- package/dist/scripts/validate-against-cia-schemas.d.ts +0 -126
- package/dist/scripts/validate-against-cia-schemas.d.ts.map +0 -1
- package/dist/scripts/validate-against-cia-schemas.js +0 -299
- package/dist/scripts/validate-against-cia-schemas.js.map +0 -1
- package/dist/scripts/validate-cross-references.d.ts +0 -49
- package/dist/scripts/validate-cross-references.d.ts.map +0 -1
- package/dist/scripts/validate-cross-references.js +0 -183
- package/dist/scripts/validate-cross-references.js.map +0 -1
- package/dist/scripts/validate-file-ownership.d.ts +0 -68
- package/dist/scripts/validate-file-ownership.d.ts.map +0 -1
- package/dist/scripts/validate-file-ownership.js +0 -135
- package/dist/scripts/validate-file-ownership.js.map +0 -1
- package/dist/scripts/validate-news-translations.d.ts +0 -27
- package/dist/scripts/validate-news-translations.d.ts.map +0 -1
- package/dist/scripts/validate-news-translations.js +0 -258
- package/dist/scripts/validate-news-translations.js.map +0 -1
- package/dist/scripts/validate-translations.d.ts +0 -162
- package/dist/scripts/validate-translations.d.ts.map +0 -1
- package/dist/scripts/validate-translations.js +0 -378
- package/dist/scripts/validate-translations.js.map +0 -1
- package/dist/scripts/workflow-state-coordinator.d.ts +0 -354
- package/dist/scripts/workflow-state-coordinator.d.ts.map +0 -1
- package/dist/scripts/workflow-state-coordinator.js +0 -876
- package/dist/scripts/workflow-state-coordinator.js.map +0 -1
- package/dist/scripts/world-bank-client.d.ts +0 -122
- package/dist/scripts/world-bank-client.d.ts.map +0 -1
- package/dist/scripts/world-bank-client.js +0 -192
- package/dist/scripts/world-bank-client.js.map +0 -1
- package/dist/scripts/world-bank-context.d.ts +0 -88
- package/dist/scripts/world-bank-context.d.ts.map +0 -1
- package/dist/scripts/world-bank-context.js +0 -331
- package/dist/scripts/world-bank-context.js.map +0 -1
|
@@ -1,332 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module data-transformers/content-generators/week-ahead
|
|
3
|
-
* @description Generator for "week-ahead" article content. Transforms calendar events,
|
|
4
|
-
* legislative documents, questions, and interpellations into narrative HTML.
|
|
5
|
-
*
|
|
6
|
-
* @author Hack23 AB
|
|
7
|
-
* @license Apache-2.0
|
|
8
|
-
*/
|
|
9
|
-
import { escapeHtml } from '../../html-utils.js';
|
|
10
|
-
import { getPillarTransition } from '../../editorial-pillars.js';
|
|
11
|
-
import { L, svSpan, sanitizeUrl, isHighPriority, formatDayName, formatDocumentDate, } from '../helpers.js';
|
|
12
|
-
import { detectPolicyDomains, generatePolicySignificance } from '../policy-analysis.js';
|
|
13
|
-
import { findRelatedDocuments, findRelatedQuestions, extractMinister, generateDeepAnalysisSection, analyzeDocumentsForContent } from './shared.js';
|
|
14
|
-
export function generateWeekAheadContent(data, lang) {
|
|
15
|
-
const { events, highlights, context } = data;
|
|
16
|
-
const documents = data.documents ?? [];
|
|
17
|
-
const questions = data.questions ?? [];
|
|
18
|
-
const interpellations = data.interpellations ?? [];
|
|
19
|
-
let content = '';
|
|
20
|
-
// Introduction section
|
|
21
|
-
content += `
|
|
22
|
-
<div class="context-box">
|
|
23
|
-
<h3>${L(lang, 'whyMatters')}</h3>
|
|
24
|
-
<p>${escapeHtml(context || String(L(lang, 'whyMattersDefault')))}</p>
|
|
25
|
-
</div>
|
|
26
|
-
`;
|
|
27
|
-
// Group events by significance
|
|
28
|
-
const highPriority = events.filter(e => isHighPriority(e));
|
|
29
|
-
if (highPriority.length > 0) {
|
|
30
|
-
content += `\n <h2>${L(lang, 'keyEvents')}</h2>\n`;
|
|
31
|
-
highPriority.forEach(event => {
|
|
32
|
-
// Derive dayName from event date if not present
|
|
33
|
-
const dayName = event.dayName || (event.datum || event.from || event.start ? formatDayName(new Date(event.datum || event.from || event.start || ''), lang) : '');
|
|
34
|
-
const eventTime = event.time || event.tid || 'Expected';
|
|
35
|
-
const eventTitle = event.title || event.titel || 'Event';
|
|
36
|
-
// Mark Swedish API titles for LLM translation post-processing
|
|
37
|
-
const escapedEventTitle = escapeHtml(eventTitle);
|
|
38
|
-
const titleHtml = (event.titel && !event.title)
|
|
39
|
-
? svSpan(escapedEventTitle, lang)
|
|
40
|
-
: escapedEventTitle;
|
|
41
|
-
const dayPrefix = dayName ? escapeHtml(dayName) + ' - ' : '';
|
|
42
|
-
content += `
|
|
43
|
-
<h3>${dayPrefix}${titleHtml}</h3>
|
|
44
|
-
<p>${escapeHtml(event.description || `${eventTime}: ${event.details || 'Parliamentary session scheduled.'}`)}</p>
|
|
45
|
-
`;
|
|
46
|
-
// Policy Context: cross-reference related documents and questions per event
|
|
47
|
-
const relatedPolicyDocs = findRelatedDocuments(event, documents);
|
|
48
|
-
const relatedPolicyQs = findRelatedQuestions(event, questions);
|
|
49
|
-
if (relatedPolicyDocs.length > 0 || relatedPolicyQs.length > 0) {
|
|
50
|
-
const policyContextLabel = lang === 'sv' ? 'Policysammanhang'
|
|
51
|
-
: lang === 'de' ? 'Politischer Kontext'
|
|
52
|
-
: lang === 'fr' ? 'Contexte politique'
|
|
53
|
-
: lang === 'es' ? 'Contexto político'
|
|
54
|
-
: lang === 'da' ? 'Politisk kontekst'
|
|
55
|
-
: lang === 'no' ? 'Politisk kontekst'
|
|
56
|
-
: lang === 'fi' ? 'Poliittinen konteksti'
|
|
57
|
-
: lang === 'nl' ? 'Beleidscontext'
|
|
58
|
-
: lang === 'ar' ? 'السياق السياسي'
|
|
59
|
-
: lang === 'he' ? 'הקשר מדיניות'
|
|
60
|
-
: lang === 'ja' ? '政策コンテキスト'
|
|
61
|
-
: lang === 'ko' ? '정책 맥락'
|
|
62
|
-
: lang === 'zh' ? '政策背景'
|
|
63
|
-
: 'Policy Context';
|
|
64
|
-
content += ` <div class="policy-context-box">\n`;
|
|
65
|
-
content += ` <h4>${policyContextLabel}</h4>\n`;
|
|
66
|
-
relatedPolicyDocs.forEach(doc => {
|
|
67
|
-
const drec = doc;
|
|
68
|
-
const docTitle = drec['titel'] ?? drec['title'] ?? 'Document';
|
|
69
|
-
const dokId = drec['dok_id'] ?? '';
|
|
70
|
-
const docUrl = dokId ? sanitizeUrl(`https://riksdagen.se/sv/dokument-och-lagar/dokument/${encodeURIComponent(dokId)}/`) : '';
|
|
71
|
-
content += ` <div class="document-entry">\n`;
|
|
72
|
-
content += ` <h5>${docUrl ? `<a href="${docUrl}" target="_blank" rel="noopener noreferrer">` : ''}${svSpan(escapeHtml(docTitle), lang)}${docUrl ? '</a>' : ''}</h5>\n`;
|
|
73
|
-
const sig = generatePolicySignificance(doc, lang);
|
|
74
|
-
if (sig)
|
|
75
|
-
content += ` <p class="policy-significance">${escapeHtml(sig)}</p>\n`;
|
|
76
|
-
content += ` </div>\n`;
|
|
77
|
-
});
|
|
78
|
-
relatedPolicyQs.forEach(q => {
|
|
79
|
-
const qrec = q;
|
|
80
|
-
const qTitle = qrec['titel'] ?? qrec['title'] ?? 'Question';
|
|
81
|
-
const qParty = qrec['parti'] ? ` (${escapeHtml(qrec['parti'])})` : '';
|
|
82
|
-
const qDokId = qrec['dok_id'] ?? '';
|
|
83
|
-
const qUrl = qDokId ? sanitizeUrl(`https://riksdagen.se/sv/dokument-och-lagar/dokument/${encodeURIComponent(qDokId)}/`) : '';
|
|
84
|
-
content += ` <div class="document-entry">\n`;
|
|
85
|
-
content += ` <h5>${qUrl ? `<a href="${qUrl}" target="_blank" rel="noopener noreferrer">` : ''}${svSpan(escapeHtml(qTitle), lang)}${qUrl ? '</a>' : ''}${qParty}</h5>\n`;
|
|
86
|
-
content += ` </div>\n`;
|
|
87
|
-
});
|
|
88
|
-
content += ` </div>\n`;
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
// Legislative Pipeline: show upcoming documents when calendar is sparse or empty
|
|
93
|
-
if (documents.length > 0) {
|
|
94
|
-
const sectionLabel = lang === 'sv'
|
|
95
|
-
? 'Kommande i den lagstiftande processen'
|
|
96
|
-
: lang === 'de' ? 'Bevorstehende legislative Tagesordnung'
|
|
97
|
-
: lang === 'fr' ? 'Agenda législatif à venir'
|
|
98
|
-
: lang === 'es' ? 'Agenda legislativa próxima'
|
|
99
|
-
: lang === 'da' ? 'Kommende lovgivningsmæssig dagsorden'
|
|
100
|
-
: lang === 'no' ? 'Kommende lovgivningsmessig agenda'
|
|
101
|
-
: lang === 'fi' ? 'Tuleva lainsäädäntöohjelma'
|
|
102
|
-
: lang === 'nl' ? 'Komende wetgevende agenda'
|
|
103
|
-
: lang === 'ar' ? 'جدول الأعمال التشريعي القادم'
|
|
104
|
-
: lang === 'he' ? 'סדר היום החקיקתי הקרוב'
|
|
105
|
-
: lang === 'ja' ? '今後の立法スケジュール'
|
|
106
|
-
: lang === 'ko' ? '향후 입법 일정'
|
|
107
|
-
: lang === 'zh' ? '未来立法议程'
|
|
108
|
-
: 'Upcoming Legislative Agenda';
|
|
109
|
-
content += `\n <h2>${sectionLabel}</h2>\n`;
|
|
110
|
-
// Show top documents — prioritise propositions and committee reports
|
|
111
|
-
const priorityDocs = [
|
|
112
|
-
...documents.filter(d => d.doktyp === 'prop' || d.doktyp === 'proposition'),
|
|
113
|
-
...documents.filter(d => d.doktyp === 'bet' || d.doktyp === 'betankande'),
|
|
114
|
-
...documents.filter(d => {
|
|
115
|
-
const t = d.doktyp;
|
|
116
|
-
return t !== 'prop' && t !== 'proposition' && t !== 'bet' && t !== 'betankande';
|
|
117
|
-
}),
|
|
118
|
-
].slice(0, 15);
|
|
119
|
-
priorityDocs.forEach(doc => {
|
|
120
|
-
const rec = doc;
|
|
121
|
-
const titleText = rec['titel'] || rec['title'] || rec['doktyp'] || 'Document';
|
|
122
|
-
const escapedTitle = escapeHtml(titleText);
|
|
123
|
-
const titleHtml = (rec['titel'] && !rec['title'])
|
|
124
|
-
? svSpan(escapedTitle, lang)
|
|
125
|
-
: escapedTitle;
|
|
126
|
-
const significance = generatePolicySignificance(doc, lang);
|
|
127
|
-
const dokId = rec['dok_id'] ?? rec['id'] ?? '';
|
|
128
|
-
const urlBase = 'https://riksdagen.se/sv/dokument-och-lagar/dokument/';
|
|
129
|
-
const safeUrl = dokId ? sanitizeUrl(`${urlBase}${encodeURIComponent(dokId)}/`) : '';
|
|
130
|
-
content += `\n <div class="document-entry">\n`;
|
|
131
|
-
content += ` <h4>${safeUrl ? `<a href="${safeUrl}" target="_blank" rel="noopener noreferrer">` : ''}${titleHtml}${safeUrl ? '</a>' : ''}</h4>\n`;
|
|
132
|
-
const dateHtml = formatDocumentDate(doc, lang);
|
|
133
|
-
if (dateHtml)
|
|
134
|
-
content += ` <p>${dateHtml}</p>\n`;
|
|
135
|
-
if (significance) {
|
|
136
|
-
content += ` <p class="policy-significance">${escapeHtml(significance)}</p>\n`;
|
|
137
|
-
}
|
|
138
|
-
content += ` </div>\n`;
|
|
139
|
-
});
|
|
140
|
-
}
|
|
141
|
-
// Questions to Watch: upcoming written questions cross-referenced with debate topics
|
|
142
|
-
if (questions.length > 0) {
|
|
143
|
-
const questionsLabel = lang === 'sv' ? 'Frågor att bevaka'
|
|
144
|
-
: lang === 'de' ? 'Zu beobachtende Anfragen'
|
|
145
|
-
: lang === 'fr' ? 'Questions à surveiller'
|
|
146
|
-
: lang === 'es' ? 'Preguntas a seguir'
|
|
147
|
-
: lang === 'da' ? 'Spørgsmål at holde øje med'
|
|
148
|
-
: lang === 'no' ? 'Spørsmål å følge med på'
|
|
149
|
-
: lang === 'fi' ? 'Seurattavat kysymykset'
|
|
150
|
-
: lang === 'nl' ? 'Te volgen vragen'
|
|
151
|
-
: lang === 'ar' ? 'أسئلة تستحق المتابعة'
|
|
152
|
-
: lang === 'he' ? 'שאלות לעקוב'
|
|
153
|
-
: lang === 'ja' ? '注目の質問'
|
|
154
|
-
: lang === 'ko' ? '주목할 질문'
|
|
155
|
-
: lang === 'zh' ? '值得关注的问题'
|
|
156
|
-
: 'Questions to Watch';
|
|
157
|
-
content += `\n <h2>${questionsLabel}</h2>\n`;
|
|
158
|
-
questions.slice(0, 8).forEach(q => {
|
|
159
|
-
const rec = q;
|
|
160
|
-
const titleText = rec['titel'] || rec['title'] || 'Question';
|
|
161
|
-
const party = rec['parti'] ? ` (${escapeHtml(rec['parti'])})` : '';
|
|
162
|
-
const dok_id = rec['dok_id'] ?? '';
|
|
163
|
-
const qUrl = dok_id ? sanitizeUrl(`https://riksdagen.se/sv/dokument-och-lagar/dokument/${encodeURIComponent(dok_id)}/`) : '';
|
|
164
|
-
content += ` <div class="document-entry">\n`;
|
|
165
|
-
content += ` <h4>${qUrl ? `<a href="${qUrl}" target="_blank" rel="noopener noreferrer">` : ''}${svSpan(escapeHtml(titleText), lang)}${qUrl ? '</a>' : ''}</h4>\n`;
|
|
166
|
-
if (party)
|
|
167
|
-
content += ` <p class="policy-significance">${party}</p>\n`;
|
|
168
|
-
content += ` </div>\n`;
|
|
169
|
-
});
|
|
170
|
-
}
|
|
171
|
-
// Interpellation Spotlight: formal interpellations enriched with minister response context
|
|
172
|
-
if (interpellations.length > 0) {
|
|
173
|
-
const interLabel = lang === 'sv' ? 'Interpellationer i fokus'
|
|
174
|
-
: lang === 'de' ? 'Interpellationen im Fokus'
|
|
175
|
-
: lang === 'fr' ? 'Interpellations en vedette'
|
|
176
|
-
: lang === 'es' ? 'Interpelaciones destacadas'
|
|
177
|
-
: lang === 'da' ? 'Forespørgsler i fokus'
|
|
178
|
-
: lang === 'no' ? 'Interpellasjoner i fokus'
|
|
179
|
-
: lang === 'fi' ? 'Välikysymykset valokeilassa'
|
|
180
|
-
: lang === 'nl' ? 'Interpellaties in de spotlight'
|
|
181
|
-
: lang === 'ar' ? 'أبرز الاستجوابات البرلمانية'
|
|
182
|
-
: lang === 'he' ? 'בקשות הבהרה בזרקור'
|
|
183
|
-
: lang === 'ja' ? '注目の質問主意書'
|
|
184
|
-
: lang === 'ko' ? '주목할 대정부 질문'
|
|
185
|
-
: lang === 'zh' ? '质询聚焦'
|
|
186
|
-
: 'Interpellation Spotlight';
|
|
187
|
-
content += `\n <h2>${interLabel}</h2>\n`;
|
|
188
|
-
interpellations.slice(0, 8).forEach(interp => {
|
|
189
|
-
const rec = interp;
|
|
190
|
-
const titleText = rec['titel'] || rec['title'] || 'Interpellation';
|
|
191
|
-
const party = rec['parti'] ? ` (${escapeHtml(rec['parti'])})` : '';
|
|
192
|
-
const dok_id = rec['dok_id'] ?? '';
|
|
193
|
-
const iUrl = dok_id ? sanitizeUrl(`https://riksdagen.se/sv/dokument-och-lagar/dokument/${encodeURIComponent(dok_id)}/`) : '';
|
|
194
|
-
// Extract minister and clean summary from the header lines
|
|
195
|
-
const rawSummary = rec['summary'] ?? '';
|
|
196
|
-
const ministerName = extractMinister(rawSummary);
|
|
197
|
-
const tillMatch = rawSummary.match(/\btill\s+[^\n]+\n\s*/i);
|
|
198
|
-
const cleanedSummary = (tillMatch
|
|
199
|
-
? rawSummary.slice(rawSummary.indexOf(tillMatch[0]) + tillMatch[0].length)
|
|
200
|
-
: rawSummary
|
|
201
|
-
.replace(/^Interpellation\s+\S+[^\n]*\n\s*/i, '')
|
|
202
|
-
.replace(/^\s*av\s+[^\n]+\n\s*/i, '')
|
|
203
|
-
.replace(/^\s*till\s+[^\n]+\n\s*/i, ''))
|
|
204
|
-
.trim()
|
|
205
|
-
.slice(0, 200);
|
|
206
|
-
content += ` <div class="document-entry">\n`;
|
|
207
|
-
content += ` <h4>${iUrl ? `<a href="${iUrl}" target="_blank" rel="noopener noreferrer">` : ''}${svSpan(escapeHtml(titleText), lang)}${iUrl ? '</a>' : ''}</h4>\n`;
|
|
208
|
-
if (party)
|
|
209
|
-
content += ` <p class="policy-significance">${party}</p>\n`;
|
|
210
|
-
if (ministerName)
|
|
211
|
-
content += ` <p class="minister-target">→ ${svSpan(escapeHtml(ministerName), lang)}</p>\n`;
|
|
212
|
-
if (cleanedSummary)
|
|
213
|
-
content += ` <p>${svSpan(escapeHtml(cleanedSummary) + '…', lang)}</p>\n`;
|
|
214
|
-
content += ` </div>\n`;
|
|
215
|
-
});
|
|
216
|
-
}
|
|
217
|
-
// Additional context
|
|
218
|
-
if (highlights && highlights.length > 0) {
|
|
219
|
-
content += `\n <h2>${L(lang, 'whatToWatch')}</h2>\n <ul>\n`;
|
|
220
|
-
highlights.forEach(highlight => {
|
|
221
|
-
content += ` <li><strong>${escapeHtml(highlight.title)}:</strong> ${escapeHtml(highlight.description)}</li>\n`;
|
|
222
|
-
});
|
|
223
|
-
content += ' </ul>\n';
|
|
224
|
-
}
|
|
225
|
-
// Narrative bridge to analytical outlook (inter-pillar transition)
|
|
226
|
-
const aheadTransition = getPillarTransition(lang, 'pulseToWatch');
|
|
227
|
-
if (aheadTransition) {
|
|
228
|
-
content += ` <p class="pillar-transition">${escapeHtml(aheadTransition)}</p>\n`;
|
|
229
|
-
}
|
|
230
|
-
// ── Key takeaways: synthesize all data sources for the week ──────────────
|
|
231
|
-
const hasEventData = highPriority.length > 0;
|
|
232
|
-
const hasDocData = documents.length > 0;
|
|
233
|
-
const hasQData = questions.length > 0;
|
|
234
|
-
const hasInterpData = interpellations.length > 0;
|
|
235
|
-
if (hasEventData || hasDocData || hasQData || hasInterpData) {
|
|
236
|
-
// Deep Analysis section (5W framework + document analysis framework)
|
|
237
|
-
const allWeekDocs = [...documents, ...questions, ...interpellations];
|
|
238
|
-
const weekCia = data.ciaContext;
|
|
239
|
-
if (allWeekDocs.length >= 2) {
|
|
240
|
-
const { frameworkAnalysis, perspectiveAnalysis } = analyzeDocumentsForContent(allWeekDocs, lang, weekCia);
|
|
241
|
-
content += generateDeepAnalysisSection({
|
|
242
|
-
documents: allWeekDocs,
|
|
243
|
-
lang,
|
|
244
|
-
cia: weekCia,
|
|
245
|
-
articleType: 'week-ahead',
|
|
246
|
-
frameworkAnalysis,
|
|
247
|
-
perspectiveAnalysis,
|
|
248
|
-
});
|
|
249
|
-
}
|
|
250
|
-
content += `\n <h2>${L(lang, 'keyTakeaways')}</h2>\n`;
|
|
251
|
-
content += ` <div class="context-box">\n <ul>\n`;
|
|
252
|
-
// Activity summary takeaway
|
|
253
|
-
const itemCount = highPriority.length + documents.length + questions.length + interpellations.length;
|
|
254
|
-
const activitySummaryTemplates = {
|
|
255
|
-
sv: n => `Denna period innehåller ${n} ärenden som spänner över debatter, lagförslag, skriftliga frågor och interpellationer.`,
|
|
256
|
-
da: n => `Denne periode omfatter ${n} emner på tværs af debatter, lovforslag, skriftlige spørgsmål og forespørgsler.`,
|
|
257
|
-
no: n => `Denne perioden omfatter ${n} saker som spenner over debatter, lovforslag, skriftlige spørsmål og interpellasjoner.`,
|
|
258
|
-
fi: n => `Tämä ajanjakso sisältää ${n} asiaa, jotka kattavat keskusteluja, lakiehdotuksia, kirjallisia kysymyksiä ja välikysymyksiä.`,
|
|
259
|
-
de: n => `Dieser Zeitraum umfasst ${n} Themen in den Bereichen Debatten, Gesetzentwürfe, schriftliche Anfragen und Interpellationen.`,
|
|
260
|
-
fr: n => `Cette période comprend ${n} sujets couvrant débats, propositions de loi, questions écrites et interpellations.`,
|
|
261
|
-
es: n => `Este período incluye ${n} temas que abarcan debates, proyectos de ley, preguntas escritas e interpelaciones.`,
|
|
262
|
-
nl: n => `Deze periode omvat ${n} onderwerpen over debatten, wetsvoorstellen, schriftelijke vragen en interpellaties.`,
|
|
263
|
-
ar: n => `تشمل هذه الفترة ${n} بندًا تتراوح بين المناقشات ومشاريع القوانين والأسئلة المكتوبة والاستجوابات.`,
|
|
264
|
-
he: n => `תקופה זו כוללת ${n} נושאים הכוללים דיונים, הצעות חוק, שאלות כתובות ואינטרפלציות.`,
|
|
265
|
-
ja: n => `この期間には、討論・法案・書面質問・質問主意書を含む${n}件の議題があります。`,
|
|
266
|
-
ko: n => `이 기간에는 토론, 법안, 서면 질문, 대정부 질문을 포괄하는 ${n}건의 의제가 있습니다.`,
|
|
267
|
-
zh: n => `本期涵盖${n}个议题,横跨辩论、法案、书面质询和质询。`,
|
|
268
|
-
};
|
|
269
|
-
const actTpl = activitySummaryTemplates[lang];
|
|
270
|
-
const activitySummary = actTpl
|
|
271
|
-
? actTpl(itemCount)
|
|
272
|
-
: `This period features ${itemCount} items spanning debates, legislative proposals, written questions, and interpellations.`;
|
|
273
|
-
content += ` <li>${escapeHtml(activitySummary)}</li>\n`;
|
|
274
|
-
// Policy domain cross-analysis from documents
|
|
275
|
-
if (documents.length > 0) {
|
|
276
|
-
const weekDomains = new Set();
|
|
277
|
-
documents.forEach(doc => {
|
|
278
|
-
detectPolicyDomains(doc, lang).forEach(d => weekDomains.add(d));
|
|
279
|
-
});
|
|
280
|
-
if (weekDomains.size > 0) {
|
|
281
|
-
const domainList = Array.from(weekDomains).slice(0, 4).join(', ');
|
|
282
|
-
const domainSummaryTemplates = {
|
|
283
|
-
sv: d => `Den lagstiftande dagordningen berör ${d} — ett brett politiskt fokus denna period.`,
|
|
284
|
-
da: d => `Den lovgivningsmæssige dagsorden berører ${d} — et bredt politisk fokus i denne periode.`,
|
|
285
|
-
no: d => `Den lovgivningsmessige agendaen berører ${d} — et bredt politisk fokus denne perioden.`,
|
|
286
|
-
fi: d => `Lainsäädäntöohjelma kattaa ${d} — laaja poliittinen painopiste tällä kaudella.`,
|
|
287
|
-
de: d => `Die gesetzgeberische Tagesordnung berührt ${d} — ein breiter politischer Fokus in diesem Zeitraum.`,
|
|
288
|
-
fr: d => `L'agenda législatif touche ${d} — un large spectre politique cette période.`,
|
|
289
|
-
es: d => `La agenda legislativa toca ${d} — un amplio enfoque político en este período.`,
|
|
290
|
-
nl: d => `De wetgevende agenda raakt ${d} — een breed politiek focus in deze periode.`,
|
|
291
|
-
ar: d => `يغطي جدول الأعمال التشريعي ${d} — تركيز سياسي واسع في هذه الفترة.`,
|
|
292
|
-
he: d => `סדר היום החקיקתי נוגע ב${d} — מוקד פוליטי רחב בתקופה זו.`,
|
|
293
|
-
ja: d => `立法アジェンダは${d}に及び、この期間の幅広い政策的焦点を示しています。`,
|
|
294
|
-
ko: d => `입법 안건은 ${d}에 걸쳐 있으며, 이 기간의 광범위한 정책 초점을 나타냅니다.`,
|
|
295
|
-
zh: d => `立法议程涉及${d}——显示本期广泛的政策关注。`,
|
|
296
|
-
};
|
|
297
|
-
const domTpl = domainSummaryTemplates[lang];
|
|
298
|
-
const domainSummary = domTpl
|
|
299
|
-
? domTpl(escapeHtml(domainList))
|
|
300
|
-
: `The legislative agenda touches on ${escapeHtml(domainList)} — a broad policy focus this period.`;
|
|
301
|
-
content += ` <li>${domainSummary}</li>\n`;
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
// Parliamentary scrutiny indicator
|
|
305
|
-
if (questions.length > 0 || interpellations.length > 0) {
|
|
306
|
-
const scrutinyCount = questions.length + interpellations.length;
|
|
307
|
-
const scrutinyTemplates = {
|
|
308
|
-
sv: n => `${n} parlamentariska granskningsåtgärder (frågor och interpellationer) signalerar aktiv oppositionsövervakning.`,
|
|
309
|
-
da: n => `${n} parlamentariske kontrolforanstaltninger signalerer aktiv oppositionsovervågning.`,
|
|
310
|
-
no: n => `${n} parlamentariske kontrolltiltak signaliserer aktiv overvåking fra opposisjonen.`,
|
|
311
|
-
fi: n => `${n} parlamentaarista valvontatoimenpidettä signaloi aktiivista oppositiovalvontaa.`,
|
|
312
|
-
de: n => `${n} parlamentarische Kontrollmaßnahmen signalisieren aktive Oppositionsüberwachung.`,
|
|
313
|
-
fr: n => `${n} mesures de contrôle parlementaire signalent une surveillance active de l'opposition.`,
|
|
314
|
-
es: n => `${n} medidas de control parlamentario señalan una supervisión activa de la oposición.`,
|
|
315
|
-
nl: n => `${n} parlementaire controlemaatregelen signaleren actief oppositietoezicht.`,
|
|
316
|
-
ar: n => `${n} إجراءات رقابة برلمانية تشير إلى مراقبة نشطة من المعارضة.`,
|
|
317
|
-
he: n => `${n} אמצעי פיקוח פרלמנטריים מסמנים מעקב פעיל של האופוזיציה.`,
|
|
318
|
-
ja: n => `${n}件の議会監視措置は、野党による積極的な監視を示しています。`,
|
|
319
|
-
ko: n => `${n}건의 의회 감시 조치는 야당의 적극적인 감시를 나타냅니다.`,
|
|
320
|
-
zh: n => `${n}项议会监督措施表明反对派正在积极监督。`,
|
|
321
|
-
};
|
|
322
|
-
const scrTpl = scrutinyTemplates[lang];
|
|
323
|
-
const scrutinySummary = scrTpl
|
|
324
|
-
? scrTpl(scrutinyCount)
|
|
325
|
-
: `${scrutinyCount} parliamentary scrutiny measures (questions and interpellations) signal active opposition oversight.`;
|
|
326
|
-
content += ` <li>${escapeHtml(scrutinySummary)}</li>\n`;
|
|
327
|
-
}
|
|
328
|
-
content += ` </ul>\n </div>\n`;
|
|
329
|
-
}
|
|
330
|
-
return content;
|
|
331
|
-
}
|
|
332
|
-
//# sourceMappingURL=week-ahead.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"week-ahead.js","sourceRoot":"","sources":["../../../../scripts/data-transformers/content-generators/week-ahead.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module data-transformers/content-generators
|
|
3
|
-
* @description Barrel re-export – the implementation has been decomposed into
|
|
4
|
-
* per-content-type modules under `./content-generators/`.
|
|
5
|
-
* All consumers that previously imported from `./content-generators.js`
|
|
6
|
-
* continue to work without changes.
|
|
7
|
-
*
|
|
8
|
-
* @see ./content-generators/index.ts for the full public API.
|
|
9
|
-
*
|
|
10
|
-
* @author Hack23 AB
|
|
11
|
-
* @license Apache-2.0
|
|
12
|
-
*/
|
|
13
|
-
export { generateWeekAheadContent, generateCommitteeContent, generatePropositionsContent, generateMotionsContent, generateInterpellationsContent, generateGenericContent, generateMonthlyReviewContent, generateMonthAheadContent, generateSwotSection, generateDashboardSection, generateStakeholderSwotSection, generateEconomicDashboardSection, findIndicatorsForDomains, buildEconomicCharts, buildEconomicTables, scoreNewsworthiness, generateMindmapSection, generateSankeySection, generateCiaOverviewSection, buildAIMindmapAnalysis, buildMindmapOptionsFromAnalysis, } from './content-generators/index.js';
|
|
14
|
-
export type { SwotSectionOptions, DashboardSectionOptions, StakeholderSwotSectionOptions, StakeholderSwot, EconomicDashboardOptions, EconomicDataPoint, NewsworthinessScore, NewsworthinessDimension, MindmapSectionOptions, MindmapBranch, MindmapBranchColor, MindmapDimension, AIMindmapItem, AIMindmapItemWeight, SubBranch, MindmapConnection, AIMindmapAnalysis, SankeySectionOptions, SankeyNode, SankeyFlow, SankeyNodeColor, CiaOverviewSectionOptions, } from './content-generators/index.js';
|
|
15
|
-
//# sourceMappingURL=content-generators.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"content-generators.d.ts","sourceRoot":"","sources":["../../../scripts/data-transformers/content-generators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,2BAA2B,EAC3B,sBAAsB,EACtB,8BAA8B,EAC9B,sBAAsB,EACtB,4BAA4B,EAC5B,yBAAyB,EACzB,mBAAmB,EACnB,wBAAwB,EACxB,8BAA8B,EAC9B,gCAAgC,EAChC,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,GAChC,MAAM,+BAA+B,CAAC;AAEvC,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,6BAA6B,EAC7B,eAAe,EACf,wBAAwB,EACxB,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,SAAS,EACT,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,EACpB,UAAU,EACV,UAAU,EACV,eAAe,EACf,yBAAyB,GAC1B,MAAM,+BAA+B,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module data-transformers/content-generators
|
|
3
|
-
* @description Barrel re-export – the implementation has been decomposed into
|
|
4
|
-
* per-content-type modules under `./content-generators/`.
|
|
5
|
-
* All consumers that previously imported from `./content-generators.js`
|
|
6
|
-
* continue to work without changes.
|
|
7
|
-
*
|
|
8
|
-
* @see ./content-generators/index.ts for the full public API.
|
|
9
|
-
*
|
|
10
|
-
* @author Hack23 AB
|
|
11
|
-
* @license Apache-2.0
|
|
12
|
-
*/
|
|
13
|
-
export { generateWeekAheadContent, generateCommitteeContent, generatePropositionsContent, generateMotionsContent, generateInterpellationsContent, generateGenericContent, generateMonthlyReviewContent, generateMonthAheadContent, generateSwotSection, generateDashboardSection, generateStakeholderSwotSection, generateEconomicDashboardSection, findIndicatorsForDomains, buildEconomicCharts, buildEconomicTables, scoreNewsworthiness, generateMindmapSection, generateSankeySection, generateCiaOverviewSection, buildAIMindmapAnalysis, buildMindmapOptionsFromAnalysis, } from './content-generators/index.js';
|
|
14
|
-
//# sourceMappingURL=content-generators.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"content-generators.js","sourceRoot":"","sources":["../../../scripts/data-transformers/content-generators.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,2BAA2B,EAC3B,sBAAsB,EACtB,8BAA8B,EAC9B,sBAAsB,EACtB,4BAA4B,EAC5B,yBAAyB,EACzB,mBAAmB,EACnB,wBAAwB,EACxB,8BAA8B,EAC9B,gCAAgC,EAChC,wBAAwB,EACxB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,GAChC,MAAM,+BAA+B,CAAC"}
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @module data-transformers/document-analysis
|
|
3
|
-
* @description Document grouping, opposition strategy analysis, and
|
|
4
|
-
* per-document intelligence analysis. Handles motion-to-proposition
|
|
5
|
-
* mapping, party activity breakdown, and speech-enriched analysis.
|
|
6
|
-
*
|
|
7
|
-
* @author Hack23 AB
|
|
8
|
-
* @license Apache-2.0
|
|
9
|
-
*/
|
|
10
|
-
import type { Language } from '../types/language.js';
|
|
11
|
-
import type { RawDocument, CIAContext } from './types.js';
|
|
12
|
-
/**
|
|
13
|
-
* Calculate an influence score (0-100) for a parliamentary document.
|
|
14
|
-
* Considers committee tier, document type, policy domain breadth,
|
|
15
|
-
* and the presence of full content as a proxy for document depth.
|
|
16
|
-
*
|
|
17
|
-
* @param doc - The document to score
|
|
18
|
-
* @returns Influence score 0-100
|
|
19
|
-
*/
|
|
20
|
-
export declare function calculateInfluenceScore(doc: RawDocument): number;
|
|
21
|
-
/** Captures the descriptive title portion that follows the prop ID. */
|
|
22
|
-
export declare const PROP_TITLE_SUFFIX_REGEX: RegExp;
|
|
23
|
-
/**
|
|
24
|
-
* Extract the parent proposition reference (e.g. "2025/26:118") from a motion title.
|
|
25
|
-
* Motions responding to a government proposition have titles like
|
|
26
|
-
* "med anledning av prop. 2025/26:118 Tillståndsprövning enligt förnybartdirektivet".
|
|
27
|
-
*/
|
|
28
|
-
export declare function extractPropRef(title: string): string | null;
|
|
29
|
-
/**
|
|
30
|
-
* Group motions by the parent government proposition they respond to.
|
|
31
|
-
* Motions without a proposition reference are returned separately as "independent".
|
|
32
|
-
*/
|
|
33
|
-
export declare function groupMotionsByProposition(motions: RawDocument[]): {
|
|
34
|
-
grouped: Map<string, RawDocument[]>;
|
|
35
|
-
independent: RawDocument[];
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* Group propositions by their referred committee (organ/committee field).
|
|
39
|
-
* Propositions without a committee use the empty-string key.
|
|
40
|
-
*/
|
|
41
|
-
export declare function groupPropositionsByCommittee(propositions: RawDocument[]): Map<string, RawDocument[]>;
|
|
42
|
-
export declare function generateOppositionStrategySection(motions: RawDocument[], lang: Language | string): string;
|
|
43
|
-
/**
|
|
44
|
-
* Render a single motion entry div (shared between flat list and themed sections).
|
|
45
|
-
*/
|
|
46
|
-
export declare function renderMotionEntry(motion: RawDocument, lang: Language | string): string;
|
|
47
|
-
/**
|
|
48
|
-
* Render a single interpellation entry with interpellation-specific labels and CSS classes.
|
|
49
|
-
* Uses 'ip' doktyp for domain analysis and interpellation-specific link/default labels.
|
|
50
|
-
*/
|
|
51
|
-
export declare function renderInterpellationEntry(doc: RawDocument, lang: Language | string): string;
|
|
52
|
-
/**
|
|
53
|
-
* Generate per-document analysis.
|
|
54
|
-
* PRIMARY: full document text, policy significance, related speeches.
|
|
55
|
-
* SECONDARY (only when genuinely informative): CIA historical context footnote.
|
|
56
|
-
*/
|
|
57
|
-
export declare function generateDocumentIntelligenceAnalysis(doc: RawDocument, docType: string, cia: CIAContext | undefined, lang: Language | string): string;
|
|
58
|
-
//# sourceMappingURL=document-analysis.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"document-analysis.d.ts","sourceRoot":"","sources":["../../../scripts/data-transformers/document-analysis.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAqB1D;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CAqChE;AAKD,uEAAuE;AACvE,eAAO,MAAM,uBAAuB,QAAuD,CAAC;AAE5F;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG3D;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG;IACjE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IACpC,WAAW,EAAE,WAAW,EAAE,CAAC;CAC5B,CAcA;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAQpG;AAED,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAqGzG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAsDtF;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAiD3F;AAED;;;;GAIG;AACH,wBAAgB,oCAAoC,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,SAAS,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAyFpJ"}
|