vocs 2.0.8 → 2.0.11
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/dist/internal/shiki-transformers.d.ts.map +1 -1
- package/dist/internal/shiki-transformers.js +12 -4
- package/dist/internal/shiki-transformers.js.map +1 -1
- package/dist/internal/twoslash/inline-cache.d.ts.map +1 -1
- package/dist/internal/twoslash/inline-cache.js +34 -23
- package/dist/internal/twoslash/inline-cache.js.map +1 -1
- package/dist/react/internal/CodeToHtml.client.d.ts +27 -0
- package/dist/react/internal/CodeToHtml.client.d.ts.map +1 -0
- package/dist/react/internal/CodeToHtml.client.js +138 -0
- package/dist/react/internal/CodeToHtml.client.js.map +1 -0
- package/dist/react/internal/CodeToHtml.d.ts +1 -7
- package/dist/react/internal/CodeToHtml.d.ts.map +1 -1
- package/dist/react/internal/CodeToHtml.js +1 -56
- package/dist/react/internal/CodeToHtml.js.map +1 -1
- package/dist/react/internal/TwoslashHover.client.d.ts.map +1 -1
- package/dist/react/internal/TwoslashHover.client.js +7 -1
- package/dist/react/internal/TwoslashHover.client.js.map +1 -1
- package/dist/styles/twoslash.css +32 -0
- package/package.json +1 -1
- package/src/internal/shiki-transformers.test.ts +22 -0
- package/src/internal/shiki-transformers.ts +15 -4
- package/src/internal/twoslash/inline-cache.test.ts +66 -0
- package/src/internal/twoslash/inline-cache.ts +44 -29
- package/src/react/internal/CodeToHtml.client.tsx +176 -0
- package/src/react/internal/CodeToHtml.tsx +1 -74
- package/src/react/internal/TwoslashHover.client.tsx +8 -1
- package/src/styles/twoslash.css +32 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shiki-transformers.d.ts","sourceRoot":"","sources":["../../src/internal/shiki-transformers.ts"],"names":[],"mappings":"AAMA,OAAO,EAA4B,KAAK,0BAA0B,EAAE,MAAM,wBAAwB,CAAA;AAClG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAUtD,KAAK,+BAA+B,GAAG,0BAA0B,CAAA;AAQjE,OAAO,EACL,uBAAuB,IAAI,YAAY,EACvC,wBAAwB,IAAI,aAAa,EACzC,4BAA4B,IAAI,iBAAiB,EACjD,gCAAgC,IAAI,qBAAqB,GAC1D,MAAM,uBAAuB,CAAA;AAO9B;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,aAAa,CAAC,OAAY,GAAG,gBAAgB,CAyFnF;AAED,MAAM,CAAC,OAAO,WAAW,aAAa,CAAC;IACrC,KAAK,OAAO,GAAG;QACb,kEAAkE;QAClE,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACnC,0DAA0D;QAC1D,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC/B,6FAA6F;QAC7F,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KACzC,CAAA;CACF;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,IAAI,gBAAgB,EAAE,CAsDrD;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAC1B,CAAA;AACD,eAAO,MAAM,cAAc,EAAE,aAAa,EAAO,CAAA;AAsBjD,wBAAgB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,OAAO,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"shiki-transformers.d.ts","sourceRoot":"","sources":["../../src/internal/shiki-transformers.ts"],"names":[],"mappings":"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"}
|
|
@@ -167,10 +167,14 @@ let typescript;
|
|
|
167
167
|
const twoslasherResetInterval = 200;
|
|
168
168
|
export function twoslash(options) {
|
|
169
169
|
const { cacheDir, inlineCache } = options;
|
|
170
|
-
const { checkOnly = false, explicitTrigger = true, disableTriggers, filter, includesMap, langAlias, langs, renderer = Renderer.rich(), throws = true, twoslashOptions, typesCache =
|
|
171
|
-
|
|
172
|
-
|
|
170
|
+
const { checkOnly = false, explicitTrigger = true, disableTriggers, filter, includesMap, langAlias, langs, renderer = Renderer.rich(), throws = true, twoslashOptions, typesCache: configuredTypesCache, } = options;
|
|
171
|
+
const inlineCacheStore = InlineCache.enabled(inlineCache) ? InlineCache.getOrCreate() : undefined;
|
|
172
|
+
const typesCache = configuredTypesCache ??
|
|
173
|
+
inlineCacheStore?.typesCache ??
|
|
174
|
+
TypesCache.fs({ dir: cacheDir ? path.join(cacheDir, 'twoslash') : undefined });
|
|
175
|
+
const shouldStripInlineCache = typesCache !== inlineCacheStore?.typesCache;
|
|
173
176
|
const lazyTwoslasher = (code, lang, executeOptions) => {
|
|
177
|
+
code = InlineCache.stripInlineCacheComments(code);
|
|
174
178
|
if (!twoslasher) {
|
|
175
179
|
const tsModule = twoslashOptions?.tsModule ?? getTypeScript();
|
|
176
180
|
// singleton twoslasher saves ~1.5s cold start time
|
|
@@ -213,7 +217,10 @@ export function twoslash(options) {
|
|
|
213
217
|
// normalized output). Without this, snippets containing consecutive
|
|
214
218
|
// custom tag lines (`@log`/`@error`/`@warn`/`@annotate`) would never
|
|
215
219
|
// hit the cache.
|
|
216
|
-
const
|
|
220
|
+
const stripped = shouldStripInlineCache
|
|
221
|
+
? InlineCache.stripInlineCacheComments(code)
|
|
222
|
+
: code;
|
|
223
|
+
const normalized = Renderer.normalizeCustomTagBlocks(stripped);
|
|
217
224
|
return typesCache.preprocess?.(normalized, lang, executeOptions, meta) ?? normalized;
|
|
218
225
|
},
|
|
219
226
|
}
|
|
@@ -262,6 +269,7 @@ export function extractInlineCacheSourceMap() {
|
|
|
262
269
|
}
|
|
263
270
|
function checkOnlyTwoslasher(options) {
|
|
264
271
|
return (code, lang, executeOptions, meta) => {
|
|
272
|
+
code = InlineCache.stripInlineCacheComments(code);
|
|
265
273
|
const twoslashOptions = {
|
|
266
274
|
...options.twoslashOptions,
|
|
267
275
|
...executeOptions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shiki-transformers.js","sourceRoot":"","sources":["../../src/internal/shiki-transformers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shiki-transformers.js","sourceRoot":"","sources":["../../src/internal/shiki-transformers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inline-cache.d.ts","sourceRoot":"","sources":["../../../src/internal/twoslash/inline-cache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"inline-cache.d.ts","sourceRoot":"","sources":["../../../src/internal/twoslash/inline-cache.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAEhF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAE/C;;;;;;;;;;;;;;;;;;GAkBG;AAEH,8EAA8E;AAC9E,MAAM,MAAM,SAAS,GAAG;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,MAAM,CAAA;CACX,CAAA;AAED,OAAO,QAAQ,gBAAgB,CAAC;IAC9B,UAAU,2BAA2B;QACnC,SAAS,CAAC,EAAE,SAAS,GAAG,IAAI,CAAA;QAC5B,OAAO,CAAC,EAAE,mBAAmB,CAAA;QAC7B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;KACrC;CACF;AAUD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,MAAM,CAElF;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG;IACrD,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,SAAS,GAAG,IAAI,CAAA;CAC5B,CAWA;AA4BD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,sBAAsB,CACpC,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAAO,GAChF;IAAE,UAAU,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,CA0J1D;AA+BD;;;GAGG;AACH,wBAAgB,OAAO,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAIjE;AAWD,qEAAqE;AACrE,wBAAgB,WAAW,IAAI;IAAE,UAAU,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,CAGtF;AAED,iFAAiF;AACjF,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAExC;AAED,iDAAiD;AACjD,wBAAgB,KAAK,IAAI,IAAI,CAE5B"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as crypto from 'node:crypto';
|
|
2
2
|
import LZString from 'lz-string';
|
|
3
|
-
import { getObjectHash } from 'twoslash/core';
|
|
4
3
|
import { FilePatcher } from './file-patcher.js';
|
|
5
4
|
/**
|
|
6
5
|
* Tag used for the ephemeral source-map comment. This comment is injected into
|
|
@@ -25,10 +24,19 @@ export function extractSourceMapComment(code) {
|
|
|
25
24
|
}
|
|
26
25
|
return { code, sourceMap };
|
|
27
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Cache payload format version. Kept at `1` even though the cache key changed
|
|
29
|
+
* from `optionsHash:lang:code` to `lang:code` (see `cacheHash`): stale
|
|
30
|
+
* payloads from the old key naturally fail the hash check on `preprocess` and
|
|
31
|
+
* are transparently re-seeded on the next write, so a version bump (which
|
|
32
|
+
* would force a one-shot invalidation of every committed cache comment) is
|
|
33
|
+
* unnecessary.
|
|
34
|
+
*/
|
|
35
|
+
const CACHE_VERSION = 1;
|
|
28
36
|
const CODE_INLINE_CACHE_KEY = '@twoslash-cache';
|
|
29
|
-
const CODE_INLINE_CACHE_REGEX = new RegExp(
|
|
37
|
+
const CODE_INLINE_CACHE_REGEX = new RegExp(`^// ${CODE_INLINE_CACHE_KEY}:[ \\t]*([^\\r\\n]*)(?:\\r?\\n|$)`, 'gm');
|
|
30
38
|
/** Matches a cache comment anchored to the start of a code block body. */
|
|
31
|
-
const CODE_INLINE_CACHE_LINE_REGEX = new RegExp(`^// ${CODE_INLINE_CACHE_KEY}:
|
|
39
|
+
const CODE_INLINE_CACHE_LINE_REGEX = new RegExp(`^// ${CODE_INLINE_CACHE_KEY}:[ \\t]*[^\\r\\n]*(?:\\r?\\n|$)`);
|
|
32
40
|
/**
|
|
33
41
|
* Remove all `// @twoslash-cache: ...` comments from a code string.
|
|
34
42
|
*
|
|
@@ -44,25 +52,24 @@ export function stripInlineCacheComments(code) {
|
|
|
44
52
|
export function createInlineTypesCache(options = {}) {
|
|
45
53
|
const { remove, ignoreCache } = options;
|
|
46
54
|
const patcher = new FilePatcher();
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
function cacheHash(code, lang, options) {
|
|
55
|
+
// Key the cache on the (already fully-composed) snippet code and language
|
|
56
|
+
// only — deliberately NOT on the twoslash options. The whole point of the
|
|
57
|
+
// inline cache is to travel with the repo across machines and CI, but
|
|
58
|
+
// `twoslashOptions` frequently contain environment-specific or volatile
|
|
59
|
+
// values (absolute paths, config that branches on whether built `.d.ts`
|
|
60
|
+
// files exist, etc). Hashing them in makes the committed cache miss on any
|
|
61
|
+
// machine other than the one that seeded it. This matches the filesystem
|
|
62
|
+
// types cache, which also keys on code alone.
|
|
63
|
+
function cacheHash(code, lang) {
|
|
57
64
|
return crypto
|
|
58
65
|
.createHash('sha256')
|
|
59
|
-
.update(`${
|
|
66
|
+
.update(`${lang ?? ''}:${code}`)
|
|
60
67
|
.digest('hex');
|
|
61
68
|
}
|
|
62
|
-
function stringifyCachePayload(data, code, lang
|
|
69
|
+
function stringifyCachePayload(data, code, lang) {
|
|
63
70
|
const payload = {
|
|
64
|
-
v:
|
|
65
|
-
hash: cacheHash(code, lang
|
|
71
|
+
v: CACHE_VERSION,
|
|
72
|
+
hash: cacheHash(code, lang),
|
|
66
73
|
data: LZString.compressToBase64(JSON.stringify(data)),
|
|
67
74
|
};
|
|
68
75
|
return JSON.stringify(payload);
|
|
@@ -72,12 +79,16 @@ export function createInlineTypesCache(options = {}) {
|
|
|
72
79
|
return null;
|
|
73
80
|
try {
|
|
74
81
|
const payload = JSON.parse(cache);
|
|
75
|
-
if (payload.v ===
|
|
82
|
+
if (payload.v === CACHE_VERSION) {
|
|
76
83
|
return {
|
|
77
84
|
payload,
|
|
78
85
|
twoslash: () => {
|
|
79
86
|
try {
|
|
80
|
-
|
|
87
|
+
const twoslash = JSON.parse(LZString.decompressFromBase64(payload.data));
|
|
88
|
+
if (typeof twoslash.code === 'string' &&
|
|
89
|
+
stripInlineCacheComments(twoslash.code) !== twoslash.code)
|
|
90
|
+
return null;
|
|
91
|
+
return twoslash;
|
|
81
92
|
}
|
|
82
93
|
catch {
|
|
83
94
|
return null;
|
|
@@ -132,7 +143,7 @@ export function createInlineTypesCache(options = {}) {
|
|
|
132
143
|
};
|
|
133
144
|
}
|
|
134
145
|
const typesCache = {
|
|
135
|
-
preprocess(code, lang,
|
|
146
|
+
preprocess(code, lang, _options, meta) {
|
|
136
147
|
if (!meta)
|
|
137
148
|
return;
|
|
138
149
|
let rawCache = '';
|
|
@@ -148,7 +159,7 @@ export function createInlineTypesCache(options = {}) {
|
|
|
148
159
|
const shouldLoadCache = !ignoreCache && !remove;
|
|
149
160
|
if (shouldLoadCache) {
|
|
150
161
|
const cache = resolveCachePayload(cacheString);
|
|
151
|
-
if (cache?.payload.hash === cacheHash(code, lang
|
|
162
|
+
if (cache?.payload.hash === cacheHash(code, lang)) {
|
|
152
163
|
const twoslash = cache.twoslash();
|
|
153
164
|
if (twoslash)
|
|
154
165
|
meta.__cache = twoslash;
|
|
@@ -164,13 +175,13 @@ export function createInlineTypesCache(options = {}) {
|
|
|
164
175
|
read(_code, _lang, _options, meta) {
|
|
165
176
|
return meta?.__cache ?? null;
|
|
166
177
|
},
|
|
167
|
-
write(code, data, lang,
|
|
178
|
+
write(code, data, lang, _options, meta) {
|
|
168
179
|
if (remove) {
|
|
169
180
|
meta?.__patch?.('');
|
|
170
181
|
return;
|
|
171
182
|
}
|
|
172
183
|
const twoslashShiki = simplifyTwoslashReturn(data);
|
|
173
|
-
const cacheStr = `// ${CODE_INLINE_CACHE_KEY}: ${stringifyCachePayload(twoslashShiki, code, lang
|
|
184
|
+
const cacheStr = `// ${CODE_INLINE_CACHE_KEY}: ${stringifyCachePayload(twoslashShiki, code, lang)}`;
|
|
174
185
|
meta?.__patch?.(cacheStr);
|
|
175
186
|
},
|
|
176
187
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inline-cache.js","sourceRoot":"","sources":["../../../src/internal/twoslash/inline-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"inline-cache.js","sourceRoot":"","sources":["../../../src/internal/twoslash/inline-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lazily highlights code on the client.
|
|
3
|
+
*
|
|
4
|
+
* Twoslash hover popups embed a code snippet (the resolved type) for every
|
|
5
|
+
* hoverable token. Highlighting these with Shiki on the server forces RSC to
|
|
6
|
+
* render and serialize a fully highlighted snippet for every token across every
|
|
7
|
+
* page at build time — which dominates build memory and time even though the
|
|
8
|
+
* popups are only ever seen on hover.
|
|
9
|
+
*
|
|
10
|
+
* Instead we render the snippet as plain text in the RSC payload and highlight
|
|
11
|
+
* it on the client. Because the popup only mounts when it opens, the Shiki
|
|
12
|
+
* bundle is dynamically imported and the snippet highlighted on demand.
|
|
13
|
+
*/
|
|
14
|
+
export declare function CodeToHtml(props: CodeToHtml.Props): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export declare namespace CodeToHtml {
|
|
16
|
+
type Props = {
|
|
17
|
+
code: string;
|
|
18
|
+
lang: string;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
/** Returns the highlighted HTML for a snippet if it has already been computed. */
|
|
22
|
+
export declare function getCached(code: string, lang: string): string | undefined;
|
|
23
|
+
/** Highlights a snippet (memoized), loading the Shiki bundle on first use. */
|
|
24
|
+
export declare function highlight(code: string, lang: string): Promise<string>;
|
|
25
|
+
/** Eagerly loads the Shiki bundle so the first real highlight is fast. */
|
|
26
|
+
export declare function prewarm(): void;
|
|
27
|
+
//# sourceMappingURL=CodeToHtml.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CodeToHtml.client.d.ts","sourceRoot":"","sources":["../../../src/react/internal/CodeToHtml.client.tsx"],"names":[],"mappings":"AAKA;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,2CA2BjD;AAmCD,yBAAiB,UAAU,CAAC;IAC1B,KAAY,KAAK,GAAG;QAClB,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;KACb,CAAA;CACF;AA0DD,kFAAkF;AAClF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,sBAEnD;AAED,8EAA8E;AAC9E,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,mBAQzD;AAED,0EAA0E;AAC1E,wBAAgB,OAAO,SAEtB"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { config } from 'virtual:vocs/config';
|
|
4
|
+
import { useEffect, useState } from 'react';
|
|
5
|
+
/**
|
|
6
|
+
* Lazily highlights code on the client.
|
|
7
|
+
*
|
|
8
|
+
* Twoslash hover popups embed a code snippet (the resolved type) for every
|
|
9
|
+
* hoverable token. Highlighting these with Shiki on the server forces RSC to
|
|
10
|
+
* render and serialize a fully highlighted snippet for every token across every
|
|
11
|
+
* page at build time — which dominates build memory and time even though the
|
|
12
|
+
* popups are only ever seen on hover.
|
|
13
|
+
*
|
|
14
|
+
* Instead we render the snippet as plain text in the RSC payload and highlight
|
|
15
|
+
* it on the client. Because the popup only mounts when it opens, the Shiki
|
|
16
|
+
* bundle is dynamically imported and the snippet highlighted on demand.
|
|
17
|
+
*/
|
|
18
|
+
export function CodeToHtml(props) {
|
|
19
|
+
const { code, lang } = props;
|
|
20
|
+
// Initialize from the cache so a snippet that was already highlighted (e.g.
|
|
21
|
+
// pre-highlighted by the popover before opening, or shown previously) renders
|
|
22
|
+
// highlighted immediately without a plain-text flash.
|
|
23
|
+
const [html, setHtml] = useState(() => getCached(code, lang) ?? null);
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (html)
|
|
26
|
+
return;
|
|
27
|
+
let cancelled = false;
|
|
28
|
+
highlight(code, lang)
|
|
29
|
+
.then((result) => {
|
|
30
|
+
if (!cancelled)
|
|
31
|
+
setHtml(result);
|
|
32
|
+
})
|
|
33
|
+
.catch(() => { });
|
|
34
|
+
return () => {
|
|
35
|
+
cancelled = true;
|
|
36
|
+
};
|
|
37
|
+
}, [code, lang, html]);
|
|
38
|
+
if (html)
|
|
39
|
+
// biome-ignore lint/security/noDangerouslySetInnerHtml: highlighted by Shiki
|
|
40
|
+
return _jsx("div", { dangerouslySetInnerHTML: { __html: html } });
|
|
41
|
+
// While highlighting, render a skeleton that mirrors the snippet's line
|
|
42
|
+
// structure so the popup is shown immediately without a layout shift.
|
|
43
|
+
return _jsx(Skeleton, { code: code });
|
|
44
|
+
}
|
|
45
|
+
function Skeleton(props) {
|
|
46
|
+
const lines = props.code.split('\n');
|
|
47
|
+
return (_jsx("div", { "data-v-code-skeleton": true, "aria-hidden": "true", children: _jsxs("pre", { className: "shiki", "data-v-overflow-fade": true, children: [_jsx("code", { children: lines.map((line, index) => {
|
|
48
|
+
const indent = line.length - line.trimStart().length;
|
|
49
|
+
const length = line.trim().length;
|
|
50
|
+
return (_jsx("span", { className: "line", children: length > 0 && (_jsx("span", { "data-v-skeleton-bar": true, style: {
|
|
51
|
+
marginLeft: `${indent}ch`,
|
|
52
|
+
width: `${Math.min(length, 48)}ch`,
|
|
53
|
+
} })) }, index));
|
|
54
|
+
}) }), _jsx("div", { "data-v-overflow-sentinel": true })] }) }));
|
|
55
|
+
}
|
|
56
|
+
let highlighterPromise;
|
|
57
|
+
function getHighlighter() {
|
|
58
|
+
if (!highlighterPromise)
|
|
59
|
+
highlighterPromise = (async () => {
|
|
60
|
+
const { bundledLanguages, createHighlighter, hastToHtml } = await import('shiki/bundle/web');
|
|
61
|
+
const { codeHighlight } = config;
|
|
62
|
+
const { langAlias = {}, themes } = codeHighlight;
|
|
63
|
+
// Note: `langAlias` is intentionally not passed to the highlighter.
|
|
64
|
+
// Passing a custom `langAlias` registers languages under their alias name
|
|
65
|
+
// when lazily loaded (e.g. `loadLanguage('ts')` registers as `ts` instead
|
|
66
|
+
// of `typescript`), which then makes `codeToHast({ lang })` fail to resolve
|
|
67
|
+
// the grammar. We resolve aliases to their base language ourselves below.
|
|
68
|
+
const highlighter = await createHighlighter({
|
|
69
|
+
themes: Object.values(themes),
|
|
70
|
+
langs: [],
|
|
71
|
+
});
|
|
72
|
+
return {
|
|
73
|
+
async codeToHtml(code, lang) {
|
|
74
|
+
const base = langAlias[lang] ?? lang;
|
|
75
|
+
const resolvedLang = base in bundledLanguages ? base : 'txt';
|
|
76
|
+
if (!highlighter.getLoadedLanguages().includes(resolvedLang))
|
|
77
|
+
await highlighter.loadLanguage(resolvedLang);
|
|
78
|
+
const hast = highlighter.codeToHast(code, {
|
|
79
|
+
defaultColor: 'light-dark()',
|
|
80
|
+
lang: resolvedLang,
|
|
81
|
+
rootStyle: false,
|
|
82
|
+
meta: { 'data-v-overflow-fade': true },
|
|
83
|
+
themes,
|
|
84
|
+
transformers: [transformerShrinkIndent()],
|
|
85
|
+
});
|
|
86
|
+
const pre = hast.children[0];
|
|
87
|
+
if (pre && pre.type === 'element' && pre.tagName === 'pre')
|
|
88
|
+
pre.children.push({
|
|
89
|
+
type: 'element',
|
|
90
|
+
tagName: 'div',
|
|
91
|
+
properties: { 'data-v-overflow-sentinel': true },
|
|
92
|
+
children: [],
|
|
93
|
+
});
|
|
94
|
+
return hastToHtml(hast);
|
|
95
|
+
},
|
|
96
|
+
};
|
|
97
|
+
})();
|
|
98
|
+
return highlighterPromise;
|
|
99
|
+
}
|
|
100
|
+
const cache = new Map();
|
|
101
|
+
function cacheKey(code, lang) {
|
|
102
|
+
return `${lang}\n${code}`;
|
|
103
|
+
}
|
|
104
|
+
/** Returns the highlighted HTML for a snippet if it has already been computed. */
|
|
105
|
+
export function getCached(code, lang) {
|
|
106
|
+
return cache.get(cacheKey(code, lang));
|
|
107
|
+
}
|
|
108
|
+
/** Highlights a snippet (memoized), loading the Shiki bundle on first use. */
|
|
109
|
+
export async function highlight(code, lang) {
|
|
110
|
+
const key = cacheKey(code, lang);
|
|
111
|
+
const cached = cache.get(key);
|
|
112
|
+
if (cached !== undefined)
|
|
113
|
+
return cached;
|
|
114
|
+
const highlighter = await getHighlighter();
|
|
115
|
+
const html = await highlighter.codeToHtml(code, lang);
|
|
116
|
+
cache.set(key, html);
|
|
117
|
+
return html;
|
|
118
|
+
}
|
|
119
|
+
/** Eagerly loads the Shiki bundle so the first real highlight is fast. */
|
|
120
|
+
export function prewarm() {
|
|
121
|
+
void getHighlighter();
|
|
122
|
+
}
|
|
123
|
+
function transformerShrinkIndent() {
|
|
124
|
+
return {
|
|
125
|
+
name: 'indent',
|
|
126
|
+
span(hast) {
|
|
127
|
+
const child = hast.children[0];
|
|
128
|
+
if (!child)
|
|
129
|
+
return;
|
|
130
|
+
if (child.type !== 'text')
|
|
131
|
+
return;
|
|
132
|
+
if (!child.value)
|
|
133
|
+
return;
|
|
134
|
+
hast.children[0] = { type: 'text', value: child.value.replace(/\s\s/g, ' ') };
|
|
135
|
+
},
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=CodeToHtml.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CodeToHtml.client.js","sourceRoot":"","sources":["../../../src/react/internal/CodeToHtml.client.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE3C;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,UAAU,CAAC,KAAuB;IAChD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;IAC5B,4EAA4E;IAC5E,8EAA8E;IAC9E,sDAAsD;IACtD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,CAAA;IAEpF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI;YAAE,OAAM;QAChB,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC;aAClB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;YACf,IAAI,CAAC,SAAS;gBAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QACjC,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;QAClB,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAA;QAClB,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IAEtB,IAAI,IAAI;QACN,6EAA6E;QAC7E,OAAO,cAAK,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAI,CAAA;IAE3D,wEAAwE;IACxE,sEAAsE;IACtE,OAAO,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,GAAI,CAAA;AACjC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAuB;IACvC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACpC,OAAO,CACL,2DAAsC,MAAM,YAG1C,eAAK,SAAS,EAAC,OAAO,2CACpB,yBACG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;wBACzB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAA;wBACpD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAA;wBACjC,OAAO,CAEL,eAAM,SAAS,EAAC,MAAM,YACnB,MAAM,GAAG,CAAC,IAAI,CACb,4CAEE,KAAK,EAAE;oCACL,UAAU,EAAE,GAAG,MAAM,IAAI;oCACzB,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI;iCACnC,GACD,CACH,IATyB,KAAK,CAU1B,CACR,CAAA;oBACH,CAAC,CAAC,GACG,EACP,iDAAgC,IAC5B,GACF,CACP,CAAA;AACH,CAAC;AASD,IAAI,kBAIS,CAAA;AAEb,SAAS,cAAc;IACrB,IAAI,CAAC,kBAAkB;QACrB,kBAAkB,GAAG,CAAC,KAAK,IAAI,EAAE;YAC/B,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAA;YAC5F,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,CAAA;YAChC,MAAM,EAAE,SAAS,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,aAAa,CAAA;YAChD,oEAAoE;YACpE,0EAA0E;YAC1E,0EAA0E;YAC1E,4EAA4E;YAC5E,0EAA0E;YAC1E,MAAM,WAAW,GAAG,MAAM,iBAAiB,CAAC;gBAC1C,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAU;gBACtC,KAAK,EAAE,EAAE;aACV,CAAC,CAAA;YACF,OAAO;gBACL,KAAK,CAAC,UAAU,CAAC,IAAY,EAAE,IAAY;oBACzC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,CAAA;oBACpC,MAAM,YAAY,GAAG,IAAI,IAAI,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;oBAC5D,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;wBAC1D,MAAM,WAAW,CAAC,YAAY,CAAC,YAAqB,CAAC,CAAA;oBACvD,MAAM,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE;wBACxC,YAAY,EAAE,cAAc;wBAC5B,IAAI,EAAE,YAAY;wBAClB,SAAS,EAAE,KAAK;wBAChB,IAAI,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE;wBACtC,MAAM;wBACN,YAAY,EAAE,CAAC,uBAAuB,EAAE,CAAC;qBAC1C,CAAC,CAAA;oBACF,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;oBAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK;wBACxD,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;4BAChB,IAAI,EAAE,SAAS;4BACf,OAAO,EAAE,KAAK;4BACd,UAAU,EAAE,EAAE,0BAA0B,EAAE,IAAI,EAAE;4BAChD,QAAQ,EAAE,EAAE;yBACb,CAAC,CAAA;oBACJ,OAAO,UAAU,CAAC,IAAI,CAAC,CAAA;gBACzB,CAAC;aACF,CAAA;QACH,CAAC,CAAC,EAAE,CAAA;IACN,OAAO,kBAAkB,CAAA;AAC3B,CAAC;AAED,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAA;AAEvC,SAAS,QAAQ,CAAC,IAAY,EAAE,IAAY;IAC1C,OAAO,GAAG,IAAI,KAAK,IAAI,EAAE,CAAA;AAC3B,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,IAAY;IAClD,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AACxC,CAAC;AAED,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAAY,EAAE,IAAY;IACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAChC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAA;IACvC,MAAM,WAAW,GAAG,MAAM,cAAc,EAAE,CAAA;IAC1C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACrD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IACpB,OAAO,IAAI,CAAA;AACb,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,OAAO;IACrB,KAAK,cAAc,EAAE,CAAA;AACvB,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,IAAI,CAAC,IAAsD;YACzD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC9B,IAAI,CAAC,KAAK;gBAAE,OAAM;YAClB,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM;gBAAE,OAAM;YACjC,IAAI,CAAC,KAAK,CAAC,KAAK;gBAAE,OAAM;YACxB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAA;QAC/E,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -1,8 +1,2 @@
|
|
|
1
|
-
export
|
|
2
|
-
export declare namespace CodeToHtml {
|
|
3
|
-
type Props = {
|
|
4
|
-
code: string;
|
|
5
|
-
lang: string;
|
|
6
|
-
};
|
|
7
|
-
}
|
|
1
|
+
export { CodeToHtml } from './CodeToHtml.client.js';
|
|
8
2
|
//# sourceMappingURL=CodeToHtml.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeToHtml.d.ts","sourceRoot":"","sources":["../../../src/react/internal/CodeToHtml.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CodeToHtml.d.ts","sourceRoot":"","sources":["../../../src/react/internal/CodeToHtml.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA"}
|
|
@@ -1,57 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
import { config } from 'virtual:vocs/config';
|
|
3
|
-
import { langs as virtualLangs } from 'virtual:vocs/langs';
|
|
4
|
-
import { bundledLanguages, createHighlighter, hastToHtml, makeSingletonHighlighter, } from 'shiki/bundle/web';
|
|
5
|
-
const getHighlighter = makeSingletonHighlighter(createHighlighter);
|
|
6
|
-
export async function CodeToHtml(props) {
|
|
7
|
-
const { code, lang } = props;
|
|
8
|
-
const { codeHighlight } = config;
|
|
9
|
-
const { langAlias = {}, themes } = codeHighlight;
|
|
10
|
-
const highlighter = await getHighlighter({
|
|
11
|
-
themes: import.meta.env.DEV ? ['none'] : Object.values(themes),
|
|
12
|
-
langs: import.meta.env.DEV
|
|
13
|
-
? ['txt']
|
|
14
|
-
: [...Object.keys(bundledLanguages), ...virtualLangs],
|
|
15
|
-
langAlias,
|
|
16
|
-
});
|
|
17
|
-
const loadedLangs = highlighter.getLoadedLanguages();
|
|
18
|
-
const resolvedLang = loadedLangs.includes(lang) ? lang : 'txt';
|
|
19
|
-
const hast = highlighter.codeToHast(code, {
|
|
20
|
-
defaultColor: 'light-dark()',
|
|
21
|
-
lang: import.meta.env.DEV ? 'txt' : resolvedLang,
|
|
22
|
-
rootStyle: false,
|
|
23
|
-
meta: {
|
|
24
|
-
'data-v-overflow-fade': true,
|
|
25
|
-
},
|
|
26
|
-
...(import.meta.env.DEV ? { theme: 'none' } : { themes }),
|
|
27
|
-
transformers: [transformerShrinkIndent()],
|
|
28
|
-
});
|
|
29
|
-
// Add overflow sentinel
|
|
30
|
-
const pre = hast.children[0];
|
|
31
|
-
if (pre && pre.type === 'element' && pre.tagName === 'pre')
|
|
32
|
-
pre.children.push({
|
|
33
|
-
type: 'element',
|
|
34
|
-
tagName: 'div',
|
|
35
|
-
properties: { 'data-v-overflow-sentinel': true },
|
|
36
|
-
children: [],
|
|
37
|
-
});
|
|
38
|
-
const html = hastToHtml(hast);
|
|
39
|
-
// biome-ignore lint/security/noDangerouslySetInnerHtml: _
|
|
40
|
-
return _jsx("div", { dangerouslySetInnerHTML: { __html: html } });
|
|
41
|
-
}
|
|
42
|
-
function transformerShrinkIndent() {
|
|
43
|
-
return {
|
|
44
|
-
name: 'indent',
|
|
45
|
-
span(hast) {
|
|
46
|
-
const child = hast.children[0];
|
|
47
|
-
if (!child)
|
|
48
|
-
return;
|
|
49
|
-
if (child.type !== 'text')
|
|
50
|
-
return;
|
|
51
|
-
if (!child.value)
|
|
52
|
-
return;
|
|
53
|
-
hast.children[0] = { type: 'text', value: child.value.replace(/\s\s/g, ' ') };
|
|
54
|
-
},
|
|
55
|
-
};
|
|
56
|
-
}
|
|
1
|
+
export { CodeToHtml } from './CodeToHtml.client.js';
|
|
57
2
|
//# sourceMappingURL=CodeToHtml.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeToHtml.js","sourceRoot":"","sources":["../../../src/react/internal/CodeToHtml.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CodeToHtml.js","sourceRoot":"","sources":["../../../src/react/internal/CodeToHtml.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA"}
|