mirror of
https://github.com/svm0n/datadeck.git
synced 2026-07-22 08:31:46 +00:00
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.
|
||
|---|---|---|
| .. | ||
| view | ||
| add-entry-form.ts | ||
| chart-block.ts | ||
| chartjs-loader.ts | ||
| field-types.ts | ||
| formula.ts | ||
| inline-view.ts | ||
| modals.ts | ||
| random-block.ts | ||
| residency.ts | ||
| settings-tab.ts | ||
| tasks-block.ts | ||
| travel-data.ts | ||
| travel-view.ts | ||
| types.ts | ||
| utils.ts | ||