fix(lint): enforce accessible SVG viewBox and title rules (#123)
* fix(lint): enforce viewBox presence and title length cap - Add a11y check: non-decorative <svg> must carry a viewBox attribute with exactly four numeric tokens and positive width/height dimensions. - Add a11y check: <title> text must be 60 characters or fewer, closing the gap between the CONTRIBUTING.md spec and linter enforcement. - Update VALID_SVG in test-lint-a11y.py to include viewBox so all existing passing cases remain valid after the new checks land. - Add three adversarial cases: missing-viewbox, invalid-viewbox, title-too-long — all verified against the gate suite (47/47 OK). * fix(lint): accept SVG comma separators and reject non-finite viewBox values - Re-split viewBox on [\s,]+ so comma-separated values (e.g. 0,0,800,600) are accepted as valid SVG - Guard each component with math.isfinite() so values like inf and nan are rejected rather than passing the > 0 size check - Add adversarial test cases: viewbox-comma-separated (pass), viewbox-nonfinite-width, viewbox-nonfinite-height (both fail) - Bump plugin manifests to 2.4.1 * fix(lint): reject viewBox numbers with Python-only underscore separators * test(lint): cover remaining viewBox cases --------- Co-authored-by: Rupam Pal <rupam.pal@euromonitor.com>
This commit is contained in:
co-authored by
Rupam Pal
parent
cc2f51f3fd
commit
91fb4f243b
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "diagram-design",
|
||||
"description": "Create branded architecture, IT current-state, flowchart, sequence, state machine, ER/data model, timeline, swimlane, quadrant, radar/spider, loop/flywheel, nested, tree, org chart, layer stack, Venn, pyramid/funnel, treemap, bar, line, Gantt and scatter charts, high-level, process, medallion, data flow, DP integration, DP security matrix, sankey, fishbone, Wardley map, kanban, user journey, deployment, dependency graph, UML class, story map, or database schema diagrams as standalone HTML/SVG/PNG. Redraw .drawio/.drawio.png/.drawio.svg or Mermaid .mmd sources at a chosen size/detail; onboard brand tokens from a website; add semantic patterns, callouts, accessible motion, or sketchy/hand-drawn styling.",
|
||||
"version": "2.5.15",
|
||||
"version": "2.5.16",
|
||||
"author": {
|
||||
"name": "Cathryn Lavery",
|
||||
"url": "https://github.com/cathrynlavery"
|
||||
|
||||
Reference in New Issue
Block a user