doxa-maps/plugin-designs/research-dashboard
Doxa Maps d690b1af41 The country's code comes from the row, not from its name
rega, ?lang=ar on landing 38: "People's Republic of China" and "Lao People's Democratic Republic" were
still English in the top-countries chart. The API labels some countries with their FORMAL name, and
library/data/countries.json does not carry those — it says "China" and "Laos" — so reversing the English
name missed precisely the countries whose names are longest. Measured: both miss the name table, and
both resolve through the row (CHN -> CN -> الصين, LAO -> LA -> لاوس).

Every row already carries both halves: the label the chart aggregates on, and the alpha-3 in
country_code.value — the same accessor the choropleth joins on. Reading the pair out of the data is
exact and needs no alias table. The name table stays as the fallback, so a label whose rows are
currently filtered out still resolves, and a synthetic key ("Other") resolves to neither and renders as
itself.

Deliberately NOT a looser text match. "Democratic Republic of the Congo" and "Republic of the Congo" are
two countries, so stripping formal prefixes is how one would silently become the other — the failure
countryName.js's own header warns about, and the reason that file refuses to guess.

Still English, and not fixable from CLDR: the regions "Middle East" and "North America & Non-Spanish
Caribbean". M49 145 is "Western Asia" and 021 is "Northern America"; neither means the region we draw,
so naming them from CLDR would redraw the region rather than translate it. They need a translation
source, which is the Driver's call — the same class as the affinity blocs and language families.

Verified: check:sfc-parse PASS. Needs eyes: rega, ?lang=ar top-countries.
2026-09-28 02:38:50 +00:00
..
scripts RTL drag: the direction probe reads the handle, and two handle margins become logical 2026-09-27 06:42:54 +00:00
src The country's code comes from the row, not from its name 2026-09-28 02:38:50 +00:00
dashboard.config.js Translate the eight strings that had no catalogue entry, keeping their English exactly 2026-09-26 03:34:42 +00:00
index.html Rename app-profiles -> plugin-designs; build green under new naming (load-bearing paths updated, guards pass) 2026-09-17 18:18:18 +00:00
index.js C1a: the affinity-block and doxa-region palettes move to library/colors/ 2026-09-26 08:39:53 +00:00
research-dashboard.meta.json consolidate docs into documentation/ and deployment shells into deployment/ 2026-09-21 23:23:23 +00:00
research-dashboard.vue RTL drag: the direction probe reads the handle, and two handle margins become logical 2026-09-27 06:42:54 +00:00