@charcuterie/ui 3.13.0 → 3.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/dist/markdownEditorCodeMirror/MarkdownView.d.ts +140 -0
  2. package/dist/markdownEditorCodeMirror/MarkdownView.d.ts.map +1 -0
  3. package/dist/markdownEditorCodeMirror/MarkdownView.js +268 -0
  4. package/dist/markdownEditorCodeMirror/MarkdownView.js.map +1 -0
  5. package/dist/markdownEditorCodeMirror/index.d.ts +14 -3
  6. package/dist/markdownEditorCodeMirror/index.d.ts.map +1 -1
  7. package/dist/markdownEditorCodeMirror/index.js +12 -3
  8. package/dist/markdownEditorCodeMirror/index.js.map +1 -1
  9. package/dist/markdownEditorCodeMirror/livePreview.d.ts +42 -2
  10. package/dist/markdownEditorCodeMirror/livePreview.d.ts.map +1 -1
  11. package/dist/markdownEditorCodeMirror/livePreview.js +243 -26
  12. package/dist/markdownEditorCodeMirror/livePreview.js.map +1 -1
  13. package/dist/markdownEditorCodeMirror/livePreviewRanges.d.ts.map +1 -1
  14. package/dist/markdownEditorCodeMirror/livePreviewRanges.js +49 -7
  15. package/dist/markdownEditorCodeMirror/livePreviewRanges.js.map +1 -1
  16. package/dist/markdownEditorCodeMirror/safeUrls.d.ts +46 -0
  17. package/dist/markdownEditorCodeMirror/safeUrls.d.ts.map +1 -0
  18. package/dist/markdownEditorCodeMirror/safeUrls.js +123 -0
  19. package/dist/markdownEditorCodeMirror/safeUrls.js.map +1 -0
  20. package/package.json +1 -1
  21. package/src/MarkdownEditor/MarkdownEditor.mdx +5 -0
  22. package/src/markdownEditorCodeMirror/MarkdownEditorCodeMirror.mdx +11 -0
  23. package/src/markdownEditorCodeMirror/MarkdownView.mdx +157 -0
  24. package/src/markdownEditorCodeMirror/MarkdownView.stories.tsx +314 -0
  25. package/src/markdownEditorCodeMirror/MarkdownView.test.tsx +288 -0
  26. package/src/markdownEditorCodeMirror/MarkdownView.tsx +373 -0
  27. package/src/markdownEditorCodeMirror/index.ts +17 -2
  28. package/src/markdownEditorCodeMirror/livePreview.ts +329 -33
  29. package/src/markdownEditorCodeMirror/livePreviewRanges.ts +64 -7
  30. package/src/markdownEditorCodeMirror/safeUrls.test.ts +0 -0
  31. package/src/markdownEditorCodeMirror/safeUrls.ts +142 -0
@@ -1 +1 @@
1
- {"version":3,"file":"livePreviewRanges.js","sourceRoot":"","sources":["../../src/markdownEditorCodeMirror/livePreviewRanges.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"livePreviewRanges.js","sourceRoot":"","sources":["../../src/markdownEditorCodeMirror/livePreviewRanges.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * The scheme guard, for markdown this surface did not write.
3
+ *
4
+ * `MarkdownView` renders files fetched from a git host, so its
5
+ * document is hostile input by default. Most of what that usually
6
+ * means is already answered by construction here: there is no
7
+ * `innerHTML` anywhere in this subpath, every rendered node is
8
+ * `createElement` plus `textContent`, and CodeMirror's state holds
9
+ * the source as *text* — so a `<script>` tag in a fetched README is
10
+ * literal characters on screen and never a script.
11
+ *
12
+ * One thing that construction did not cover, and it was live in the
13
+ * editor as well: **a URL is taken from the document and used as a
14
+ * URL.** `[click me](javascript:…)` conceals its markup, paints as a
15
+ * link, and `window.open` then runs the script in this origin. The
16
+ * image path is the same shape one step down — `![](…)` writes an
17
+ * `src` verbatim.
18
+ *
19
+ * So every URL crosses this module before it reaches an `href`, an
20
+ * `src` or `window.open`, in **both** components. It is a defect in
21
+ * a shape the two share, which makes it a defect in the layer they
22
+ * share.
23
+ *
24
+ * ### An allowlist, and nothing clever
25
+ *
26
+ * Denying `javascript:` is the version that has a bug. Browsers
27
+ * throw tabs and newlines away before they read a scheme, so
28
+ * `JaVaScript:`, a tab in the middle of the word, and a leading
29
+ * newline are one URL to a navigation and three different strings to
30
+ * a blocklist. This normalises the way a browser does, asks what
31
+ * scheme is left, and accepts only names it recognises. A URL with
32
+ * **no** scheme is relative and is always fine.
33
+ */
34
+ /**
35
+ * The link's URL, or `undefined` when it must not become one.
36
+ *
37
+ * A rejected URL is not rewritten and not blanked — the text stays
38
+ * exactly where the author put it and simply stops being a link.
39
+ * That is the honest failure: the reader still sees every character
40
+ * of the source, and can still read the URL itself in the
41
+ * raw-markdown view, but nothing on the page will navigate to it.
42
+ */
43
+ export declare const toSafeLinkUrl: (url: string) => string | undefined;
44
+ /** The image's `src`, or `undefined` when it must not have one. */
45
+ export declare const toSafeImageUrl: (url: string) => string | undefined;
46
+ //# sourceMappingURL=safeUrls.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeUrls.d.ts","sourceRoot":"","sources":["../../src/markdownEditorCodeMirror/safeUrls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAgEH;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,GACxB,KAAK,MAAM,KACV,MAAM,GAAG,SAaX,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,cAAc,GACzB,KAAK,MAAM,KACV,MAAM,GAAG,SAgBX,CAAA"}
@@ -0,0 +1,123 @@
1
+ /**
2
+ * The scheme guard, for markdown this surface did not write.
3
+ *
4
+ * `MarkdownView` renders files fetched from a git host, so its
5
+ * document is hostile input by default. Most of what that usually
6
+ * means is already answered by construction here: there is no
7
+ * `innerHTML` anywhere in this subpath, every rendered node is
8
+ * `createElement` plus `textContent`, and CodeMirror's state holds
9
+ * the source as *text* — so a `<script>` tag in a fetched README is
10
+ * literal characters on screen and never a script.
11
+ *
12
+ * One thing that construction did not cover, and it was live in the
13
+ * editor as well: **a URL is taken from the document and used as a
14
+ * URL.** `[click me](javascript:…)` conceals its markup, paints as a
15
+ * link, and `window.open` then runs the script in this origin. The
16
+ * image path is the same shape one step down — `![](…)` writes an
17
+ * `src` verbatim.
18
+ *
19
+ * So every URL crosses this module before it reaches an `href`, an
20
+ * `src` or `window.open`, in **both** components. It is a defect in
21
+ * a shape the two share, which makes it a defect in the layer they
22
+ * share.
23
+ *
24
+ * ### An allowlist, and nothing clever
25
+ *
26
+ * Denying `javascript:` is the version that has a bug. Browsers
27
+ * throw tabs and newlines away before they read a scheme, so
28
+ * `JaVaScript:`, a tab in the middle of the word, and a leading
29
+ * newline are one URL to a navigation and three different strings to
30
+ * a blocklist. This normalises the way a browser does, asks what
31
+ * scheme is left, and accepts only names it recognises. A URL with
32
+ * **no** scheme is relative and is always fine.
33
+ */
34
+ /**
35
+ * A scheme, per RFC 3986: a letter, then letters, digits, `+`, `-`
36
+ * or `.`, then the colon. Anchored, and the character class has no
37
+ * `/` in it — so `notes/2026:rack.md` is read as the relative path
38
+ * it is rather than as a `notes/2026` scheme.
39
+ */
40
+ const SCHEME_PATTERN = /^([a-z][a-z0-9+.-]*):/;
41
+ /**
42
+ * `[text](<url with spaces>)` is CommonMark's escape hatch for a URL
43
+ * that contains a space, and the parser hands the angle brackets
44
+ * through as part of the `URL` node. They are not part of the URL.
45
+ */
46
+ const toBareUrl = (url) => url.replace(/^<|>$/g, "");
47
+ /**
48
+ * What a browser discards before it looks at a URL: the C0 control
49
+ * range and the space. Stripping all of it is deliberately *more*
50
+ * aggressive than the URL standard, which removes only tab and the
51
+ * two newline characters — erring this way can only turn a URL that
52
+ * would have been treated as relative into one that is rejected,
53
+ * which is the harmless direction.
54
+ */
55
+ const toNormalizedUrl = (url) => toBareUrl(url)
56
+ // biome-ignore lint/suspicious/noControlCharactersInRegex: matching them is the entire point
57
+ .replace(/[\u0000-\u0020]/g, "")
58
+ .toLowerCase();
59
+ const toSchemeName = (url) => SCHEME_PATTERN.exec(toNormalizedUrl(url))?.[1];
60
+ /**
61
+ * The schemes a link may carry.
62
+ *
63
+ * `mailto:` and `tel:` are here because a README that prints a
64
+ * contact address is ordinary and neither one can execute. `file:`
65
+ * is not, because it reads the *reader's* disk.
66
+ */
67
+ const LINK_SCHEMES = new Set([
68
+ "http",
69
+ "https",
70
+ "mailto",
71
+ "tel",
72
+ ]);
73
+ /** The schemes an image's `src` may carry, `data:` aside. */
74
+ const IMAGE_SCHEMES = new Set(["http", "https"]);
75
+ /**
76
+ * `data:`, allowed for an image type only — which is not the hole it
77
+ * looks like.
78
+ *
79
+ * A `data:image/svg+xml` document loaded through `<img>` is a
80
+ * replaced element: no script execution, no network, no reach into
81
+ * the embedding page. That is why it is the one inline format worth
82
+ * having, and why this repo's own `Avatar` story uses it for a
83
+ * portrait that needs no fixture file. `data:text/html` is a
84
+ * different thing entirely and does not match this.
85
+ */
86
+ const DATA_IMAGE_PATTERN = /^data:image\/[a-z0-9.+-]+[,;]/;
87
+ /**
88
+ * The link's URL, or `undefined` when it must not become one.
89
+ *
90
+ * A rejected URL is not rewritten and not blanked — the text stays
91
+ * exactly where the author put it and simply stops being a link.
92
+ * That is the honest failure: the reader still sees every character
93
+ * of the source, and can still read the URL itself in the
94
+ * raw-markdown view, but nothing on the page will navigate to it.
95
+ */
96
+ export const toSafeLinkUrl = (url) => {
97
+ const scheme = toSchemeName(url);
98
+ if (scheme === undefined) {
99
+ // No scheme at all: a relative path, a `#fragment`, a `?query`,
100
+ // or a protocol-relative `//host/path`. None of them can name an
101
+ // executable scheme, so all of them are fine.
102
+ return toBareUrl(url);
103
+ }
104
+ return LINK_SCHEMES.has(scheme)
105
+ ? toBareUrl(url)
106
+ : undefined;
107
+ };
108
+ /** The image's `src`, or `undefined` when it must not have one. */
109
+ export const toSafeImageUrl = (url) => {
110
+ const scheme = toSchemeName(url);
111
+ if (scheme === undefined) {
112
+ return toBareUrl(url);
113
+ }
114
+ if (scheme === "data") {
115
+ return DATA_IMAGE_PATTERN.test(toNormalizedUrl(url))
116
+ ? toBareUrl(url)
117
+ : undefined;
118
+ }
119
+ return IMAGE_SCHEMES.has(scheme)
120
+ ? toBareUrl(url)
121
+ : undefined;
122
+ };
123
+ //# sourceMappingURL=safeUrls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeUrls.js","sourceRoot":"","sources":["../../src/markdownEditorCodeMirror/safeUrls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH;;;;;GAKG;AACH,MAAM,cAAc,GAAG,uBAAuB,CAAA;AAE9C;;;;GAIG;AACH,MAAM,SAAS,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;AAE5D;;;;;;;GAOG;AACH,MAAM,eAAe,GAAG,CAAC,GAAW,EAAE,EAAE,CACtC,SAAS,CAAC,GAAG,CAAC;IACZ,6FAA6F;KAC5F,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;KAC/B,WAAW,EAAE,CAAA;AAElB,MAAM,YAAY,GAAG,CAAC,GAAW,EAAE,EAAE,CACnC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAEhD;;;;;;GAMG;AACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;IAC3B,MAAM;IACN,OAAO;IACP,QAAQ;IACR,KAAK;CACN,CAAC,CAAA;AAEF,6DAA6D;AAC7D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAEhD;;;;;;;;;;GAUG;AACH,MAAM,kBAAkB,GAAG,+BAA+B,CAAA;AAE1D;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,GAAW,EACS,EAAE;IACtB,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;IAEhC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,gEAAgE;QAChE,iEAAiE;QACjE,8CAA8C;QAC9C,OAAO,SAAS,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IAED,OAAO,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;QAC7B,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC;QAChB,CAAC,CAAC,SAAS,CAAA;AACf,CAAC,CAAA;AAED,mEAAmE;AACnE,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,GAAW,EACS,EAAE;IACtB,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAA;IAEhC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,SAAS,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC;IAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,OAAO,kBAAkB,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAClD,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC;YAChB,CAAC,CAAC,SAAS,CAAA;IACf,CAAC;IAED,OAAO,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC;QAC9B,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC;QAChB,CAAC,CAAC,SAAS,CAAA;AACf,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@charcuterie/ui",
3
- "version": "3.13.0",
3
+ "version": "3.14.0",
4
4
  "description": "The Charcuterie components. Tokens for look, @charcuterie/logic for state, ARIA that agents can actually drive.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -15,6 +15,11 @@ stored string.
15
15
 
16
16
  <Canvas of={MarkdownEditorStories.Default} />
17
17
 
18
+ > **Reading rather than editing?** `isReadOnly` here leaves the toolbar on screen, because it
19
+ > means "an editor you cannot type in". A surface with no toolbar in the DOM is
20
+ > [`MarkdownView`](?path=/docs/components-data-markdownview--docs), in the
21
+ > `@charcuterie/ui/markdown-editor-codemirror` subpath.
22
+
18
23
  ## Props
19
24
 
20
25
  <Controls />
@@ -22,6 +22,17 @@ import { MarkdownEditorCodeMirror } from "@charcuterie/ui/markdown-editor-codemi
22
22
 
23
23
  <Controls />
24
24
 
25
+ ## Reading, not editing
26
+
27
+ `isReadOnly` here means *an editor you cannot type in*: the toolbar stays, drawn in its
28
+ disabled colours above a document nobody is editing. That is right for a form field that is
29
+ temporarily locked, and wrong for reading a file.
30
+
31
+ For reading, take **[`MarkdownView`](?path=/docs/components-data-markdownview--docs)** from
32
+ this same subpath. It has no toolbar in the DOM at all, it is controlled rather than
33
+ uncontrolled, its content is a `role="article"` instead of a `role="textbox"`, and it renders
34
+ **identically** to this component because it is the same code — same range rules, same theme.
35
+
25
36
  ## Which of the two editors you want
26
37
 
27
38
  `MarkdownEditor` is still the default, and most consumers should keep it.
@@ -0,0 +1,157 @@
1
+ import { Canvas, Controls, Meta } from "@storybook/addon-docs/blocks";
2
+
3
+ import * as MarkdownViewStories from "./MarkdownView.stories";
4
+
5
+ <Meta of={MarkdownViewStories} />
6
+
7
+ # MarkdownView
8
+
9
+ Rendered markdown, with **no toolbar in the DOM** and nothing to type into. The same
10
+ document, drawn the same way, as the editor beside it.
11
+
12
+ It is **opt-in**, from the same subpath as the editor:
13
+
14
+ ```tsx
15
+ import { MarkdownView } from "@charcuterie/ui/markdown-editor-codemirror"
16
+ ```
17
+
18
+ <Canvas of={MarkdownViewStories.Default} />
19
+
20
+ ## Props
21
+
22
+ <Controls />
23
+
24
+ ## Which of the three you want
25
+
26
+ | | `MarkdownEditor` | `MarkdownEditorCodeMirror` | `MarkdownView` |
27
+ | --- | --- | --- | --- |
28
+ | For | typing markdown | typing markdown, rendered | **reading** markdown |
29
+ | Surface | `<textarea>` + painted layer | CodeMirror 6 | CodeMirror 6 |
30
+ | New dependency | none | ~176 KB gz, optional peer | the same one |
31
+ | Toolbar | nine buttons | nine buttons + a switch | **none, ever** |
32
+ | Value | `defaultValue` | `defaultValue` | **`value`, controlled** |
33
+ | Content role | `textbox` | `textbox` | **`article`** |
34
+
35
+ `isReadOnly` on either editor is **not** this. It means *an editor you cannot type in*: the
36
+ nine formatting buttons are still there, still in the accessibility tree, drawn in their
37
+ disabled colours above a document nobody is editing. That is right for a form field that is
38
+ temporarily locked, and wrong for reading a file — which is what this exists for.
39
+
40
+ ## No toolbar means no toolbar
41
+
42
+ `queryAllByRole("toolbar")` returns nothing here, and so does `queryAllByRole("button")`.
43
+ That is asserted rather than described, because the workaround it replaces was a CSS rule
44
+ in a consuming app keyed on `role="toolbar"`, and CSS is a poor place to keep a promise:
45
+ `visibility: hidden` leaves the buttons in the accessibility tree, `opacity: 0` leaves them
46
+ in the tab order, and even `display: none` leaves the *overflow menu button* the toolbar
47
+ collapses into at narrow widths.
48
+
49
+ ## It renders what the editor renders
50
+
51
+ <Canvas of={MarkdownViewStories.SameAsTheEditor} />
52
+
53
+ One string, two surfaces, side by side. They agree because they **are the same code** —
54
+ `livePreviewRanges.ts` decides what every construct looks like and both call it, over the
55
+ same GFM parse, under the same theme.
56
+
57
+ That is the whole reason this lives in the CodeMirror subpath instead of being a
58
+ `react-markdown` reader in the main barrel. A second renderer agrees on the day it is
59
+ written and drifts afterwards, one construct at a time, and the bug arrives six months later
60
+ as *"the table changed when I saved it"*. There is no second renderer here to drift.
61
+
62
+ The cost is honest and worth stating: a consumer who wants **only** the reader still installs
63
+ CodeMirror. For an app that renders markdown in three places and edits it in one, that is the
64
+ right way round — the dependency is paid once.
65
+
66
+ ## It is controlled, and the editors are not
67
+
68
+ `value` in, and that is it. Fetch a file at a different commit hash, pass the new string, and
69
+ the page changes — no `key`, no remount, no stale document sitting above a new title.
70
+
71
+ The editors take `defaultValue` because reassigning an `EditorView`'s document from outside
72
+ throws away the undo history that belonged to it, which is a real cost and is why they ask
73
+ for a `key` instead. A view has no undo history and no caret to protect, so it has nothing to
74
+ lose by simply rendering what it is given.
75
+
76
+ ## A `- [ ]` box is inert unless you say where the tick goes
77
+
78
+ <Canvas of={MarkdownViewStories.AllStates} />
79
+
80
+ Pass `onToggleTask` and the checkboxes are operable; leave it out and they render
81
+ **disabled**. The state is still on screen either way — that is a fact about the document
82
+ and belongs there — but nothing pretends the reader can change it.
83
+
84
+ This is the same shape as `onUploadImage` on the editors: omit the handler and the capability
85
+ is simply not offered, which beats offering one that half works. Two of the three surfaces
86
+ this component was built for — a rendered comment, and a repo file fetched at a commit hash —
87
+ have nowhere to put a tick, and a box that visibly toggles and then loses the change on
88
+ reload is worse than one that says up front it cannot.
89
+
90
+ `onToggleTask` hands back the **whole next markdown document**, exactly like the editors'
91
+ `onChange`, so one autosave wires to both. The view applies the tick to its own document
92
+ immediately so the box responds under the pointer; if the consumer rejects the change, the
93
+ next `value` puts it back.
94
+
95
+ ## Hostile markdown
96
+
97
+ This will render files fetched from a git host, so the document is untrusted by default.
98
+
99
+ <Canvas of={MarkdownViewStories.HostileMarkdown} />
100
+
101
+ **Raw HTML in the source is never parsed as HTML.** There is no `innerHTML` in this subpath,
102
+ no `dangerouslySetInnerHTML`, and no sanitiser to have a bug in. CodeMirror's state holds the
103
+ source as *text* and every rendered node is `createElement` plus `textContent`, so a
104
+ `<script>` in a fetched README is drawn as the characters `<script>`. It is not stripped,
105
+ not escaped and not "sanitised" — there is simply no code path that would turn it into an
106
+ element.
107
+
108
+ **A URL is checked before it is used as one.** That was the one place the document reached the
109
+ platform, and it was live in the editor too: `[click](javascript:…)` concealed its markup,
110
+ painted as a link, and `window.open` ran it in this origin. Both components now go through an
111
+ allowlist that normalises the way a browser does, so `JaVaScript:` and a tab in the middle of
112
+ the word are the same URL to it. A rejected link is **left as source** — brackets, parentheses
113
+ and all — rather than repainted as a link-coloured word that silently refuses to work.
114
+ Images take `http:`, `https:` and `data:image/*` only; `data:text/html` is not an image.
115
+
116
+ **The reader is not a beacon.** Remote images carry `referrerpolicy="no-referrer"`, so an
117
+ image in somebody else's file cannot learn which page loaded it.
118
+
119
+ What is *not* claimed: nothing here stops a document linking somewhere unpleasant, and the
120
+ images the markdown names are still fetched — that is what rendering them means.
121
+
122
+ ## Accessibility
123
+
124
+ The content is `role="article"`, not the `role="textbox"` CodeMirror writes by default, and
125
+ that swap is the difference between reading a document and being trapped in a text field: a
126
+ screen reader entering a textbox switches to forms mode and reads the contents as one flat
127
+ string, with no heading navigation and no table navigation.
128
+
129
+ So the structure has to be real, and two pieces of it are:
130
+
131
+ - **Headings carry `role="heading"` and an `aria-level`**, so the H key steps between
132
+ sections. The editor deliberately has none of this — ARIA flattens a textbox's contents, so
133
+ a heading role inside one would be a decoration that lies about what it does.
134
+ - **Links are real `<a href>` elements**, in the tab order, activated by Enter, with an
135
+ address the browser will show and copy. The editor cannot have these: an anchor inside a
136
+ `contenteditable` competes with the caret for its line, which is why the editor paints a
137
+ span and translates a `mousedown` instead — and why clicking link text *there* cannot place
138
+ a caret.
139
+
140
+ <Canvas of={MarkdownViewStories.Interactive} />
141
+
142
+ **The document itself is not a tab stop.** There is nothing in it to operate, and a reading
143
+ surface that swallowed a Tab would be one more thing between the reader and the next control.
144
+ Every link inside it is reachable, in document order.
145
+
146
+ List structure is **visual only**, and worth knowing rather than discovering: the `-` bullet
147
+ is drawn as a dimmed marker rather than concealed, the same way it is in the editor, so a
148
+ list reads as a list on screen but is not a `<ul>` in the tree. Tables are real `<table>`
149
+ elements with real `<th>`s, because the table widget builds one.
150
+
151
+ ## The Narrow View
152
+
153
+ <Canvas of={MarkdownViewStories.Responsive} />
154
+
155
+ A table too wide for its column scrolls **inside its own block** rather than pushing the
156
+ column sideways, and an image is capped at the width it is given. Nothing here is keyed to a
157
+ viewport width; a column in a three-up board is narrow on a 4K display.