MCPcopy
hub / github.com/marktext/marktext / header

Function header

packages/muya/src/inlineRenderer/renderer/header.ts:5–51  ·  view source on GitHub ↗
(
    this: Renderer,
    {
        h,
        cursor,
        block,
        token,
        outerClass,
    }: ISyntaxRenderOptions & { token: BeginRuleToken },
)

Source from the content-addressed store, hash-verified

3import { CLASS_NAMES } from '../../config';
4
5export default function header(
6 this: Renderer,
7 {
8 h,
9 cursor,
10 block,
11 token,
12 outerClass,
13 }: ISyntaxRenderOptions & { token: BeginRuleToken },
14) {
15 const { content } = token;
16 const { start, end } = token.range;
17 const className = this.getClassName(
18 outerClass,
19 block,
20 {
21 range: {
22 start,
23 end: end - content.length,
24 },
25 } as BeginRuleToken,
26 cursor,
27 );
28 const markerVnode = this.highlight(
29 h,
30 block,
31 start,
32 end - content.length,
33 token,
34 );
35 const contentVnode = this.highlight(
36 h,
37 block,
38 end - content.length,
39 end,
40 token,
41 );
42 const spaceSelector
43 = className === CLASS_NAMES.MU_HIDE
44 ? `span.${CLASS_NAMES.MU_HEADER_TIGHT_SPACE}.${CLASS_NAMES.MU_REMOVE}`
45 : `span.${CLASS_NAMES.MU_GRAY}.${CLASS_NAMES.MU_REMOVE}`;
46
47 return [
48 h(`span.${className}.${CLASS_NAMES.MU_REMOVE}`, markerVnode),
49 h(spaceSelector, contentVnode),
50 ];
51}

Callers

nothing calls this directly

Calls 3

hFunction · 0.85
highlightMethod · 0.80
getClassNameMethod · 0.45

Tested by

no test coverage detected