@openstage/glyph-renderer 0.2.0 → 0.2.2

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.
package/README.md ADDED
@@ -0,0 +1,59 @@
1
+ # @openstage/glyph-renderer
2
+
3
+ Read-only renderer for [Glyph](https://codeberg.org/open-stage/glyph)
4
+ documents. Turns a saved `EditorDocument` into DOM (or an HTML string) for
5
+ display **without loading the editor**, with lazy language-aware code
6
+ highlighting.
7
+
8
+ ```bash
9
+ npm i @openstage/glyph-renderer
10
+ ```
11
+
12
+ ## Usage
13
+
14
+ ```ts
15
+ import { renderToElement, highlightThemeCss } from '@openstage/glyph-renderer';
16
+
17
+ container.replaceChildren(renderToElement(savedDocument));
18
+ // renderToHTML(doc) returns an HTML string instead (SSR / caching)
19
+ ```
20
+
21
+ Output is built with `createElement`/`textContent` only (never `innerHTML`),
22
+ link `href`s are scheme-allowlisted, control-obfuscated `javascript:`/`data:`
23
+ URLs are stripped, and highlighted code is assembled from a parsed token tree —
24
+ **untrusted documents render safely**. Rendered links open in a new tab
25
+ (`target="_blank"` + `rel="noopener noreferrer"`).
26
+
27
+ ## Syntax highlighting
28
+
29
+ The renderer is style-free (the host owns CSS). For highlighted code, inject
30
+ the token stylesheet (re-themable via `--glyph-hl-*` custom properties):
31
+
32
+ ```ts
33
+ const style = document.createElement('style');
34
+ style.textContent = highlightThemeCss;
35
+ document.head.appendChild(style);
36
+ ```
37
+
38
+ `renderToElement` highlights progressively: it returns immediately with plain
39
+ code, then upgrades the block in place once the language's grammar chunk has
40
+ loaded. `renderToHTML` is **synchronous**, so preload grammars first for
41
+ SSR/snapshots:
42
+
43
+ ```ts
44
+ import { preloadLanguages, renderToHTML } from '@openstage/glyph-renderer';
45
+
46
+ await preloadLanguages(['typescript', 'bash']);
47
+ const html = renderToHTML(savedDocument); // now highlighted
48
+ ```
49
+
50
+ `ensureLanguage` / `isLanguageSupported` are also exported.
51
+
52
+ ## Documentation
53
+
54
+ Full guide and supported-content reference:
55
+ <https://codeberg.org/open-stage/glyph#readme>
56
+
57
+ ## License
58
+
59
+ MIT © Gabriel Bornea
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EAOf,MAAM,uBAAuB,CAAC;AAsB/B,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,kEAAkE;AAClE,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAmJF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,cAAc,GAAG,aAAa,EACrC,UAAS,aAAkB,KAC1B,WASF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GACvB,OAAO,cAAc,GAAG,aAAa,EACrC,UAAS,aAAkB,KAC1B,MAAmD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EAOf,MAAM,uBAAuB,CAAC;AAsB/B,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,kEAAkE;AAClE,MAAM,MAAM,aAAa,GAAG;IAC1B;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,CAAC;AAuJF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe,GAC1B,OAAO,cAAc,GAAG,aAAa,EACrC,UAAS,aAAkB,KAC1B,WASF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GACvB,OAAO,cAAc,GAAG,aAAa,EACrC,UAAS,aAAkB,KAC1B,MAAmD,CAAC"}
package/dist/index.js CHANGED
@@ -98,7 +98,11 @@ const renderNode = (doc) => (node) => {
98
98
  const pre = el(doc)('pre');
99
99
  const code = el(doc)('code');
100
100
  const source = (node.content ?? []).map((t) => t.text).join('');
101
- const language = node.attrs?.language;
101
+ // Only trust a language we actually support: an untrusted document
102
+ // could carry an arbitrary string, and an unsanitized value would be
103
+ // interpolated into a CSS class (classList.add throws on whitespace).
104
+ const rawLanguage = node.attrs?.language;
105
+ const language = rawLanguage && isLanguageSupported(rawLanguage) ? rawLanguage : undefined;
102
106
  const highlighted = language ? highlightToDom(doc, language, source) : null;
103
107
  if (language) {
104
108
  code.setAttribute('data-language', language);
@@ -112,7 +116,7 @@ const renderNode = (doc) => (node) => {
112
116
  code.textContent = source;
113
117
  // Grammar not loaded yet: render plain now, upgrade in place once
114
118
  // its lazily-loaded chunk arrives (progressive enhancement).
115
- if (language && isLanguageSupported(language)) {
119
+ if (language) {
116
120
  void ensureLanguage(language).then((ok) => {
117
121
  if (!ok)
118
122
  return;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openstage/glyph-renderer",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "license": "MIT",
5
5
  "author": "Gabriel Bornea",
6
6
  "repository": {
@@ -36,9 +36,20 @@
36
36
  "typecheck": "tsc -p tsconfig.json --noEmit"
37
37
  },
38
38
  "dependencies": {
39
- "@openstage/glyph-core": "0.2.0",
39
+ "@openstage/glyph-core": "0.2.2",
40
40
  "highlight.js": "^11.11.1",
41
41
  "lowlight": "^3.3.0",
42
42
  "monadyssey": "^2.0.1"
43
- }
43
+ },
44
+ "description": "XSS-safe read-only renderer (DOM/HTML) with lazy syntax highlighting for Glyph documents.",
45
+ "keywords": [
46
+ "editor",
47
+ "rich-text",
48
+ "renderer",
49
+ "html",
50
+ "syntax-highlighting",
51
+ "ssr",
52
+ "xss-safe",
53
+ "glyph"
54
+ ]
44
55
  }