svm0n_datadeck/src
SVM0N ccfa983b82 fix(security): stop rendering CSV cell values via unescaped innerHTML
renderLibrary and renderTasks built their collapsible section headers
with `summary.innerHTML = \`...${genre}...\`` / `...${project}...` —
genre/project come straight from a CSV cell, so a value like
`<img src=x onerror=...>` would execute as markup instead of rendering
as text. Obsidian's plugin review flags raw innerHTML with dynamic
content for exactly this reason. Switched both to createSpan/text,
matching every other render call in the codebase. Layout is unaffected
(both headers are flex containers, so the plain text node between the
two spans was already an anonymous flex item — now it's a real span,
same visual result). Tests: 115 + 112 passed, typecheck clean.
2026-07-16 16:56:24 +00:00
..
view fix(security): stop rendering CSV cell values via unescaped innerHTML 2026-07-16 16:56:24 +00:00
add-entry-form.ts chore(privacy): personal tooling goes local — vault layout leaves the public repo 2026-07-12 17:24:08 +00:00
chart-block.ts feat(chart): 7-day rolling-mean smoothing + week/month date bucketing 2026-07-12 02:11:41 +00:00
chartjs-loader.ts feat(chart): bar/aggregate mode for categorical X + size-by point radius 2026-07-12 01:41:23 +00:00
field-types.ts feat: project-tag notes, Anki sync, file-template commands, Tasks refinements 2026-06-15 16:47:28 +00:00
formula.ts feat(chart): Chart view + csv-chart block with best-fit and formula overlay 2026-07-11 15:32:30 +00:00
inline-view.ts chore(privacy): remove identity/locale signals and dangling private-doc refs 2026-07-16 12:56:45 +00:00
modals.ts fix(config): '— none —' disables a function everywhere; functions exclusive per column again 2026-07-11 15:39:57 +00:00
random-block.ts feat: v1.4.0 — multi-select picker, sticky table header, csv-random block, palette commands 2026-06-12 15:53:44 +00:00
residency.ts feat(travel): world-map view, residency gauges, editable trips, modal UX 2026-06-06 14:08:10 +00:00
settings-tab.ts chore(release): publish prep — store-quality README, MIT LICENSE, versions.json, v1.6.0 2026-07-12 06:40:58 +00:00
tasks-block.ts chore(privacy): personal tooling goes local — vault layout leaves the public repo 2026-07-12 17:24:08 +00:00
travel-data.ts chore(privacy): remove identity/locale signals and dangling private-doc refs 2026-07-16 12:56:45 +00:00
travel-view.ts chore(privacy): remove identity/locale signals and dangling private-doc refs 2026-07-16 12:56:45 +00:00
types.ts feat(chart): 7-day rolling-mean smoothing + week/month date bucketing 2026-07-12 02:11:41 +00:00
utils.ts chore(privacy): remove identity/locale signals and dangling private-doc refs 2026-07-16 12:56:45 +00:00