Live articles
The frontend renders only what KB/src/kb/index.ts exports as allArticles. As of this note, that array contains 10 inline KBArticle literals:
| id | title | category | applicability |
|---|---|---|---|
gdpr/article-6 | GDPR Article 6 — Lawfulness of Processing | gdpr | eu |
gdpr/article-14 | GDPR Article 14 — Transparency for Indirectly Obtained Data | gdpr | eu |
gdpr/article-17 | GDPR Article 17 — Right to Erasure | gdpr | eu |
swedish-law/dataskyddslagen | The Swedish Data Protection Act (Dataskyddslagen) | swedish-law | sweden |
swedish-law/imy-supervision | IMY — The Swedish Data Protection Authority | swedish-law | sweden |
b2b-enrichment/legitimate-interest-assessment | Conducting a Legitimate Interest Assessment (LIA) for B2B Enrichment | b2b-enrichment | sweden |
b2b-enrichment/data-sources | Permissible Data Sources for Swedish B2B Enrichment | b2b-enrichment | sweden |
enforcement/imy-fines-2023-2024 | IMY Enforcement Actions 2023–2024: Key Decisions | enforcement | sweden |
templates/art14-notice | Template: Article 14 Notification Email | templates | sweden |
templates/dpa-template | Template: Data Processing Agreement (DPA) | templates | eu |
Source: KB/src/kb/index.ts (~480 lines, all literals).
Unwired draft modules
The following files exist in the repo but are not imported by index.ts:
KB/src/kb/gdpr/article-6.ts— exportsgdprArticle6(deep-dive, ~190 lines)KB/src/kb/gdpr/article-13-14.ts— exportsgdprArticle1314(~205 lines)KB/src/kb/gdpr/article-30.ts— exportsgdprArticle30(RoPA, ~185 lines)KB/src/kb/gdpr/overview.ts— exportsgdprOverview(~190 lines)KB/src/kb/swedish-law/dataskyddslagen.ts— exportsdataskyddslagen(deeper than the inline one, ~155 lines)KB/src/kb/swedish-law/bolagsverket.ts— exportsbolagsverketData(~190 lines)KB/src/kb/b2b-enrichment/legitimate-interest.ts— exportslegitimateInterestKB/src/kb/b2b-enrichment/data-minimization.ts— exportsdataMinimizationKB/src/kb/b2b-enrichment/art14-obligations.ts— exportsart14ObligationsKB/src/kb/b2b-enrichment/retention-limits.ts— exportsretentionLimitsKB/src/kb/enforcement/imy-decisions.ts— exportsimyDecisions
Warning
All five files under
b2b-enrichment/andenforcement/import from"../../types", which does not exist. Correct path is"../../lib/types". They will not compile if they were ever imported. Thegdpr/andswedish-law/files use the correct relative path ("../../lib/types").
Todo
No
templates/subdirectory exists despitetemplatesbeing aKBCategory. The two template articles live inline inindex.ts.
Welcome screen claim
The welcome screen advertises “29 Legal Articles” (KB/src/components/ArticleViewer.tsx:171). The actual count rendered is 10. The discrepancy presumably reflects the planned merge of the unwired draft modules.
Article schema
Defined in KB/src/lib/types.ts:21:
interface KBArticle {
id: string; // e.g. "gdpr/article-6"
title: string;
category: KBCategory; // gdpr | swedish-law | b2b-enrichment | enforcement | templates
tags: string[];
summary: string; // 2–3 sentences shown in summary box and search results
content: KBSection[]; // ordered, nested by `level: 2 | 3 | 4`
citations: Citation[];
lastUpdated: string; // ISO date
applicability: Applicability; // sweden | eu | global
}See also
KB Overview, KB GDPR Articles, KB Swedish Law, KB B2B Enrichment, KB IMY Decisions.